內部tuple:(源)內網ip+port(例如:192.168.1.5:50007)
外部tuple:(源)公網ip+port
目標tuple:(目標)公網ip+port
symmetric和cone兩種,其中cone又分為full cone、restricted cone、port restricted cone三種型別。基本不同是nat將內部tuple與外部tuple的轉換和對映關係的不同。cone nat與目標tuple無關,symmetric nat將目標tuple作為建立轉換關係之前的重要參考項,與目標tuple嚴格一一對映。
full cone:
內部tuple x經過nat轉換至外部tuple y,x-y的建立轉換關係,任意外部節點且無限制tuple z都可以將tuple y作為目標tuple,向我們的內部tuple x傳送udp報文。
restricted cone:
與full cone不同的是:多了乙個限制,限制是什麼,出於安全考慮,nat裝置只**已知的外部tuple的ip報文,只有當內部tuple x曾經傳送過udp報文給目標tuple z,才可以與tuple x傳送報文。
port restricted cone nat:
在restricted cone上的基礎上,出於更加安全的考慮,nat裝置只**已知的外部tuple的ip+port(過濾條件更為苛刻)報文。
symmetric
通過嚴格的nat方式,與目標tuple建立嚴格的一一對映關係,確保安全性。
所以,從安全角度考慮:symmetric > port restricted cone nat > restricted cone > full cone。相反,如果我們做p2p,打通點對點的通訊方式的簡單程度,與上面排序就相反,最友好的nat型別就是full cone,任意節點且無限制。
方法1:借助第三方stun列表
python:
需要借助外部stun伺服器完成,如下可作為stun列表,進行嘗試建立連線。
stun.xten.com 3478
stun.voipbuster.com 3478
stun.voxgratia.org 3478
stun.sipgate.net 10000
stun.ekiga.net 3478
stun.ideasip.com 3478
stun.schlund.de 3478
stun.voiparound.com 3478
stun.voipbuster.com 3478
stun.voipstunt.com 3478
numb.viagenie.ca 3478
stun.counterpath.com 3478
stun.1und1.de 3478
stun.gmx.net 3478
stun.callwithus.com 3478
stun.counterpath.net 3478
stun.internetcalls.com 3478
stun.voip.aebc.com 3478
numb.viagenie.ca 3478
方法2:測試工具nat型別測試工具:
方法3:部署stun伺服器
NAT的原理與型別
nat是ietf標準,它通過將區域網內的主機ip位址對映為internet上有效的公網ip位址,從而實現了網路位址的復用。使用nat技術,區域網內的多台pc可以共享單個 全域性路由的ip位址,減少了所需的ip位址的數量。nat主要可以分為兩類 基本nat和napt network address p...
NAT穿越(一) NAT型別
nat分為四種型別 1 完全透明nat full cone nat 從內部主機 in ip ipa 埠 in port porta 傳送的資料對映為 ip out ip ipa 和埠 out port porta 傳送到外網 從伺服器直連到對映的 ip out ip ipa 和埠 out port ...
NAT型別簡介
1 完全透明nat full cone nat 從相同內部主機 in ipx 埠 in portx 傳送的資料對映為相同的ip outip x 和埠 out port x 傳送到外網。並且從另乙個伺服器 y 如果直連到對映的ip out ip x 和埠 out port x 上,資料將會被 到內部主...