如何穿越防火牆NAT

如何穿越防火牆NAT,首先需要計算機節點可以自動判斷自己的NAT狀態,計算機節點內部內置了

判斷邏輯,在外部需要一臺STUN的服務器,通過發送請求後可以計算機節點自己所在NAT的情況.
在處理Full Cone NAT時由於IP地址和通訊端口都不做限制可以說它在通訊層面的級別和公網節

點是一致的.穿越這類NAT只需要內部先發起呼叫後,外部的被叫端可以比較輕鬆的建立通道.
由於處於嚴格控制的NAT後的節點間無法直接通訊,所以需要利用第三方服務器來做溝通的橋樑.

我們知道在私網後的計算機間IP不同不在一個網段,所以當他們需要溝通時往往藉助於處在公網

的計算機來溝通,公網計算機節點爲兩個都可以訪問到他的私網節點做好IP通道轉發私網節點間

的通訊信息,這個公網節點的計算機就稱隧道服務器.
處理雙方在Symmetric NAT 和 Port Restricted NAT後需要外部的隧道服務器來使的處於NAT後

的計算機節點可以溝通.
通訊的雙方如果有一方是Symmetric NAT 和 Port Restricted NAT,而另外一放在Full Cone NAT

或者公網的節點,NAT後的可以和Full Cone NAT和公網的節點直接通訊,反方向的通訊需要超級

節點先通知一下對方然後超級節點做隧道服務器.
雙方在Restricted Cone NAT後的節點由於他們的NAT不改變通訊端口,所以可以通過在NAT"打洞"

的技術讓其雙方通訊.
需要指出的是現在大多數的NAT是Cone類型的,這也是將來傳送數字音頻和視頻信號的INTERNET發

展方向,所以用戶在未來可能遇到的更多NAT不會是一定需要通訊隧道情況的NAT。
下面用列表說明一下幾種情況:假設ab節點需要通通訊


節點  防火牆類型  節點   防火牆類型     溝通方式
a     公網->      b Cone NAT(除Port Restricted NAT)    直接聯繫
a     公網->      b Symmetric NAT 和 Port Restricted NAT 直接聯繫
a     公網->      b 公網       直接聯繫
a     Cone NAT
      (除Port
      Restricted NAT)-> b Cone NAT(除Port Restricted NAT)          可聯繫

a     Cone NAT
      (除Port
      Restricted NAT)-> b Symmetric NAT 和 Port Restricted NAT   需要隧道支持

a     Symmetric NAT
      Port
      Restricted NAT->  b Symmetric NAT 和 Port Restricted NAT   需要隧道支持


 

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