本文原創自 http://blog.csdn.net/voipmaker 轉載註明出處。
本文是VOIP通信NAT穿越系列專題的第二篇,
NAT 是一種在IP分組通過路由器或防火牆時重寫源IP地址或/和目的IP地址的技術,這種技術被普遍使用在有多臺主機但只通過一個公有IP地址訪問因特網的私有網絡中。20世紀90年代中期,NAT是作爲一種解決IPv4地址短缺以避免保留IP地址困難的方案而流行起來的。家庭和小型辦公室的路由器一般都集成了防火牆,DHCP服務器和NAT功能。
NAT穿越是廣泛用於P2P領域的通信方式。在視頻會議過程中,NAT穿越也在內外網消息通信中起到了至關重要的作用,平臺服務器之間、與會終端之間、以及平臺服務器和與會終端之間都可能存在信令或多媒體流等的NAT穿越.
瞭解過NAT原理知識的人應該都知道NAT的四種類似,可能多數人並不很清楚每種類型的具體細節,下面做簡單理解:
NAT分四種類型,全錐形,地址限制性,端口限制型和對稱NAT。
全錐形:
這種NAT類型是最簡單,也是最不安全的NAT類型,其基本原理是:
NAT內部機器A通過NAT設備訪問外部的網絡B,NAT會分配一個A機器源端口到外部端口的映射,這時,外部任何機器都可以向NAT設備打開的外部端口發送數據包,而不管數據包是不是從B地址過來,這也就是爲什麼此類型NAT是最不安裝的原因。
地址限制型:
這種類型NAT比全錐形增加了安全性,我們知道全錐形NAT中外部任何機器可以通過外部映射端口發送數據包到內部的設備A,而地址限制型NAT則只准許從設備B地址發送數據包到外部 映射端口,但不限制是B機器哪個端口過來的數據包。
端口限制型:
這種類型NAT在地址限制型NAT基礎上增加了B的端口限制,地址限制性NAT限制了B的地址,而端口限制型NAT則在此基礎上增加了B端口的限制,
也就是說,只有從B地址以及A開始發送到B的端口爲源端口的數據包,NAT設備才轉發給內部的A。
對稱NAT:
這種類型的NAT與上述3種類型的不同,在於當同一內部主機使用相同的端口與不同地址的外部主機進行通信時, NAT對該內部主機的映射會有所不同。對稱式NAT不保證所有會話中的私有地址和公開IP之間綁定的一致性。相反,它爲每個新的會話分配一個新的端口號, 這導致當兩個設備都是對稱NAT時,其後面的客戶端無法實現p2P通信,必須藉助中轉設備。