2.AutomaticTestTerminal--自動測試終端
網路地址轉換就是:路由器將私有地址轉換為公有地址使數據包能夠發到網際網路上,同時從網際網路上接收數據包時,將公用地址轉換為私有地址。
在計算機網路中,網路地址轉換(NetworkAddressTranslation或簡稱NAT,也叫做網路掩蔽或者IP掩蔽)是一種在IP數據包通過路由器或防火牆時重寫源IP位址或/和目的IP位址的技術。這種技術被普遍使用在有多台主機但只通過一個公有IP位址訪問網際網路的私有網路中。根據規範,路由器是不能這樣工作的,但它的確是一個方便並得到了廣泛套用的技術。當然,NAT也讓主機之間的通信變得複雜,導致通信效率的降低。
目前存在兩種地址轉換方式。一種式經常被簡記為"NAT"的網路地址轉換(有時也叫做“網路地址連線埠轉換”,記做NAPT),這種方式支持連線埠的映射並允許多台主機共享一個公用IP位址。另一種也可以稱作NAT或“基本NAT”,“靜態NAT",但在技術上更簡單一點,僅支持地址轉換,不支持連線埠映射,這就需要對每一個當前連線都要對應一個IP位址。寬頻(broadband)路由器通常使用這種方式來允許一台指定的計算機去接收所有的外部連線,甚至當路由器本身只有一個可用外部IP時也如此,這台路由器有時也被標記為DMZ主機。
支持連線埠轉換的NAT又可以分為兩類:源地址轉換和目的地址轉換NAT。前一種情形下發起連線的計算機的IP位址將會被重寫,後一種情況下被連線計算機的IP位址將被重寫。實際上,以上兩種方式通常會一起使用以支持雙向通信。
受到NAT影響的應用程式
一些高層協定(比如FTP,Quake,SIP)是在IP包的有效數據內傳送網路層(第三層)信息的。比如,主動模式的FTP使用單獨的連線埠分別來控制命令傳輸和數據傳輸。當請求一個檔案傳輸時,主機在傳送請求的同時也通知對方自己想要在哪個連線埠接受數據。但是,如果主機是在一個簡單的NAT防火牆後傳送的請求,那么由於連線埠的映射將會使對方接收到的信息無效。
一個套用層網關(ApplicationLayerGateway或ALG)可以修正這個問題。運行在NAT防火牆設備上的ALG軟體模組可以更新任何由地址轉換而導致無效的信息。顯然,ALG需要明白它所要修正的上層協定,所以每個有這種問題的協定都需要有一個單獨的ALG。
但是,除FTP外的大多數傳統的客戶機-伺服器協定不需要傳送網路層(第三層)信息,也就不需要ALG。
這個問題的另一個可能的解決方法是使用象STUN這樣的技術,但是這隻針對建立在UDP上的高層協定,並且需要它內建這中技術。這種技術對對稱NAT也是無效的。還有一種可能的方案是UPnP,但它需要和NAT設備配合起來使用