NATMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">——網絡地址轉換,是通過將專用網絡地址(如企業內部網Intranet)轉換為公用地址(如互聯網Internet),從而對外隱藏了內部管理的 IP 地址。這樣,通過在內部使用非注冊的 IP 地址,并將它們轉換為一小部分外部注冊的 IP 地址,從而減少了IP 地址注冊的費用以及節省了目前越來越缺乏的地址空間(即IPV4)。同時,這也隱藏了內部網絡結構,從而降低了內部網絡受到攻擊的風險。
NAT功能通常被集成到路由器、防火墻、單獨的NAT設備中,當然,現在比較流行的操作系統或其他軟件(主要是代理軟件,如WINROUTE),大多也有著NAT的功能。NAT設備(或軟件)維護一個狀態表,用來把內部網絡的私有IP地址映射到外部網絡的合法IP地址上去。每個包在NAT設備(或軟件)中都被翻譯成正確的IP地址發往下一級。與普通路由器不同的是,NAT設備實際上對包頭進行修改,將內部網絡的源地址變為NAT設備自己的外部網絡地址,而普通路由器僅在將數據包轉發到目的地前讀取源地址和目的地址。
NAT分為三種類型:靜態NAT(staticNAT)、NAT池(pooledNAT)和端口NAT(PAT)。其中靜態NAT將內部網絡中的每個主機都被永久映射成外部網絡中的某個合法的地址,而NAT池則是在外部網絡中定義了一系列的合法地址,采用動態分配的方法映射到內部網絡,端口NAT則是把內部地址映射到外部網絡的一個IP地址的不同端口上。
廢話說了不少,讓我們轉入正題,看一下如何利用NAT保護內部網絡。
使用網絡地址轉換NAT,使得外部網絡對內部網絡的不可視,從而降低了外部網絡對內部網絡攻擊的風險性。
在我們將內部網絡的服務使用端口映射到NAT設備(或是軟件)上時,NAT設備看起來就像一樣對外提供服務器一臺服務器一樣(如圖一)。這樣對于攻擊者來講,具有一定的難度,首先他要攻破NAT設備,再根據NAT設備連接到內部網絡進行破壞。
圖一
由圖一我們可以看出,內部網絡中的A、B和C提供相應的MAIL、FTP和HTTP服務。我們利用NAT將所提供服務機器的對應的服務端口25、110、20、21和80映射到NAT服務器上(IP:88.88.88.88,域名:5imax.net上,其中端口及服務對應如下:
SMTP<->25
POP3<->110
FTP<->20,21
HTTP<->80
說到20,我來加一個小插曲。我們都知道FTP對應的端口應該是21,為什么又冒出來一個20呢?其實,我們們進行FTP文件傳輸中,客戶端首先連接到FTP服務器的21端口,進行用戶的認證,認證成功后,當我們要傳輸文件時,服務器會開一個端口為20來進行傳輸數據文件,也就是說,端口20才是真正傳輸所用到的端口,端口21只用于FTP的登陸認證。我們平常下載文件時,會遇到下載到99%時,文件不完成,不能成功的下載。其實是因為文件下載完畢后,還要在21端口再行進行用戶認證,而我們下載文件的時間如果過長,客戶機與服務器的21端口的連接會被服務器認為是超時連接而中斷掉,就是這個原因。解決方法就是設置21端口的響應時間。
話題扯遠了(別拿柿子、雞蛋……扔我。,我們繼續我們的NAT吧。由圖一為例,當外部訪問者訪問http://www.kjueaiud.com時,NAT會自動把請求提交到內部的192.168.0.102的80端口上,反之也一樣,我們所收到的信息也是內部的192.168.0.102通過NAT來傳輸給外部訪問者的。同樣FTP及MAIL的服務也是如此。
其中的NAT既可以用操作系統和代理軟件,又可以用路由器及NAT設備。下面我們用軟件的方法來具體實現具體的NAT設置。
文章來源于領測軟件測試網 http://www.kjueaiud.com/