《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > NAT路由器原理及其應用中需要注意的事項
NAT路由器原理及其應用中需要注意的事項
摘要: NAT路由器原理及其應用中需要注意的事項。
關鍵詞: 2.5G|3G NAT 路由器 CIDR
Abstract:
Key words :

        IP地址耗盡促成了CIDR" title="CIDR">CIDR的開發(fā),但CIDR開發(fā)的主要目的是為了有效的使用現(xiàn)有的internet地址,。而同時根據(jù)RFC 1631(IP Network Address Translator)開發(fā)的NAT" title="NAT">NAT卻可以在多重的internet子網中使用相同的IP,,用來減少注冊IP地址的使用,。

  NAT路由技術使得一個私有網絡可以通過internet注冊IP連接到外部世界,位于inside網絡和outside網絡中的NAT路由器" title="路由器">路由器在發(fā)送數(shù)據(jù)包之前,負責把內部IP翻譯成外部合法地址。內部網絡的主機不可能同時于外部網絡通信,,所以只有一部分內部地址需要翻譯。

  NAT的翻譯可以采取靜態(tài)翻譯(static translation)和動態(tài)翻譯(dynamic translation)兩種,。靜態(tài)翻譯將內部地址和外部地址一對一對應,。當NAT需要確認哪個地址需要翻譯,翻譯時采用哪個地址pool時,,就使用了動態(tài)翻譯,。采用portmultiplexing技術,或改變外出數(shù)據(jù)的源port技術可以將多個內部IP地址影射到同一個外部地址,,這就是PAT(port address translator)。當影射一個外部IP到內部地址時,,可以利用TCP的load distribution技術,。使用這個特征時,內部主機基于round-robin機制,,將外部進來的新連接定向到不同的主機上去,。注意:load distributiong只有在影射外部地址到內部的時候才有效。

  NAT使用的幾種情況:

  a,,連接到internet,,但卻沒有足夠的合法地址分配給內部主機。

  b,,更改到一個需要重新分配地址的ISP,。

  c,有相同的IP地址的兩個internat合并,。

  d,,想支持負載均衡(主機)。

  采用NAT后,,一個最主要的改變就是你失去了端對端IP的traceability,,也就是說,,從此你不能再經過NAT使用ping和traceroute,其次就是曾經的一些IP對IP的程序不再可以正常運行,,潛在的不易被觀察到的缺點就是增加了網絡延時,。NAT可以支持大部分IP協(xié)議,但有幾個協(xié)議需要注意,,首先tftp,,rlogin,rsh,rcp和ip multicast都被NAT支持,其次就是bootp,,snmp和NAT路由器更新全部給拒絕了,。NAT的幾個相關概念:

  Inside Local IP address: 指定于內部網絡的主機地址,全局唯一,,但為私有地址,。

  Inside Global IP address: 代表一個或更多內部IP到外部世界的合法IP。

  Outside Global IP address: 外部網絡主機的合法IP,。

  Outside Local IP address: 外部網絡的主機地址,,看起來是內部網絡的,私有地址,。

  Simple Translation Entry: 影射IP到另一個地址的Entry,。

  Extended Translation Entry:影射IP地址和端口到另一個pair的Entry。

  a,,內部地址翻譯(Translation inside local addresses):

  這是比較通用的一種方法,,將內部IP一對一的翻譯成外部地址。

  在內部主機連接到外部網絡時,,當?shù)谝粋€數(shù)據(jù)包到達NAT路由器時,,router檢查它的NAT表,因為是NAT是靜態(tài)配置的,,故可以查詢出來(simply entry),,然后router將數(shù)據(jù)包的內部局部IP(源地址)更換成內部全局地址,再轉發(fā)出去,。外部主機接受到數(shù)據(jù)包用接受到的內部全局地址來響應,,NAT接受到外部回來的數(shù)據(jù)包,再根據(jù)NAT表把地址翻譯成內部局部IP,,轉發(fā)過去,。

  b,內部全局地址復用(overloading inside glogal addresses)

  使用地址和端口pair將多個內部地址影射到比較少的外部地址,。這也是所謂的PAT,。和內部地址翻譯一樣,NAT router同樣也負責查表和翻譯內部IP地址,,唯一的區(qū)別就是由于使用了overloading,,router將復用同樣的內部全局IP地址,,并存儲足夠的信息以區(qū)分它和其他地址,這樣查詢出來的是extended entry,。NAT router和外部主機的通訊采用翻譯過的內部全局地址,,故同一般的通信沒有差別,router到內部主機通訊時,,同樣要查NAT表,。

  c,TCP負載重分配(TCP load distributing)和以上兩種操作不同,,這是NAT由外到內的翻譯,,所以那種以為WEB server一定要放置到NAT外部的說法是錯誤的。

  工作原理:外部主機向虛擬主機(定義為內部全局地址)通訊,,NAT router接受外部主機的請求并依據(jù)NAT表建立與內部主機的連接,,把內部全局地址(目的地址)翻譯成內部局部地址,并轉發(fā)數(shù)據(jù)包到內部主機,,內部主機接受包并作出響應,。NAT router再使用內部局部地址和端口查詢數(shù)據(jù)表,根據(jù)查詢到的外部地址和端口做出響應,。此時,,如果同一主機再做第二個連接,NAT router將根據(jù)NAT表將建立與另一虛擬主機的連接,,并轉發(fā)數(shù)據(jù),。

  d,處理重疊網絡,。

  這種方法主要用于兩個intranet的互連,,同樣給我們處理兩個重疊網絡提供了方法。它的實現(xiàn)要求DNS server的支持(用于區(qū)別兩個不同的主機),。

  1,主機A要求向主機C建立連接,,先象DNS server做地址查詢,。

  2,NAT router截獲DNS的響應,,如果地址有重疊,,將翻譯返回的地址。它將創(chuàng)建一個simply entry把重疊的外部全局地址(目的地址)翻譯成外部局部地址,。

  3,,NAT路由器轉發(fā)DNS響應到主機A,它已經把主機C的地址(外部全局地址)翻譯成外部局部地址,。

  4,,當NAT路由器接受到主機C的數(shù)據(jù)包時,,它將建立內部局部、全局,,外部全局,、局部地址間的轉換,主機A將由內部局部地址(源地址)翻譯成內部全局地址,,主機C將由外部全局地址(目的地址)翻譯成外部局部地址,。

此內容為AET網站原創(chuàng),未經授權禁止轉載,。