NAT深入理解


NAT對通信鏈路的影響:

1、NAT使IP會話的保持時效變短。

nat爲每個會話建立端口映射表,但是nat設備因爲自己的端口資源有限,在會話靜默期會自動利用超時機制回收端口資源。

所以,p2p應用需要有peer之間通信鏈路保活的應用協議(常說的心跳)。心跳時間間隔沒有明確規定(可5-15s)。nat映射保活需要兩端的peer都向對端發保活報文,一方發送並不能保障對端nat映射的有效期。


2、NAT使以IP來分析用戶行爲的機制失效。

因爲服務器收到的一個IP連接,後面可能對應多個用戶。


3、NAT網關的有多個外部IP時,一組相關聯的會話可能會被分配在不同的外部IP上。


NAT工作在網絡和傳輸層,依賴修改IP、端口號、校驗和來完成轉換。

NAT對認證協議(保障端描述信息不可變化,實際端描述信息變化了)、隧道協議(以外層ip標識隧道)、ICMP報文(以ip來標識兩端)都有影響。

IP分片後,傳輸層信息(src-port, dst-port)只在第一個分片中存在,NAT需要對IP分片做特別處理。(NAT難以識別後續分片與關聯表的對應關係。)


NAT穿越:

通常採用udp穿越。tcp穿越需要nat設備支持。

由於nat轉換是一種設備特性,設備廠商的實現會有差別,有時候不夠“標準”,所以nat穿越難免有失敗的可能。


NAT應用:

1、NAT多實例應用。

在一個物理網絡上可能會存在多個邏輯網絡,邏輯網絡之間不通但有訪問共享資源的需求。NAT可以把一個網絡空間映射到另一個網絡空間。

2、兩個衝突地址範圍的局域網合併。

在不改變雙方局域網地址的情況下,實現局域網合併。通過nat同時改變網絡包的源地址和目的地址來實現。

3、高可靠性組網。

一個設備提供多個公網接口。在多接口上部署NAT可以提供更高帶寬和多ISP就近訪問的能力。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章