VoIP穿越NAT和防火墻的方法

一、NAT/ALG 方式

普通NAT是通過(guò)修改UDP或TCP報(bào)文頭部地址信息實(shí)現(xiàn)地址的轉(zhuǎn)換,但對(duì)于VOIP應(yīng)用,在TCP/UDP凈載中也需帶地址信息,ALG方式是指在私網(wǎng)中的VOIP終端在凈載中填寫(xiě)的是其私網(wǎng)地址,此地址信息在通過(guò)NAT時(shí)被修改為NAT上對(duì)外的地址。

語(yǔ)音和視頻協(xié)議(H323、SIP、MGCP/H248)的識(shí)別和對(duì)NAT/Firewall的控制,同時(shí)每增加一種新的應(yīng)用都將需要對(duì) NAT/Firewall進(jìn)行升級(jí)。

在安全要求上還需要作一些折衷,因?yàn)锳LG 不能識(shí)別加密后的報(bào)文內(nèi)容,所以必須保證報(bào)文采用明文傳送,這使得報(bào)文在公網(wǎng)中傳送時(shí)有很大的安全隱患。

NAT/ALG是支持VOIP NAT穿透的一種最簡(jiǎn)單的方式,但由于網(wǎng)絡(luò)實(shí)際情況是已部署了大量的不支持此種特性的NAT/FW設(shè)備,因此,實(shí)際應(yīng)用中,很難采用這種方式。

二、MIDCOM 方式

與NAT/ALG不同的是,MIDCOM的基本框架是采用可信的第三方(MIDCOM Agent)對(duì)Middlebox (NAT/FW)進(jìn)行控制,VOIP協(xié)議的識(shí)別不由Middlebox完成,而是由外部的MIDCOM Agent完成,因此VOIP使用的協(xié)議對(duì)Middlebox是透明的 .

由于識(shí)別應(yīng)用協(xié)議的功能從Middlebox移到外部的MIDCOM Agent上,根據(jù)MIDCOM 的構(gòu),在不需要更改Middlebox基本特性的基礎(chǔ)上,通過(guò)對(duì)MIDCOM Agent的升級(jí)就可以支持更多的新業(yè)務(wù),這是相對(duì)NAT/ALG方式的一個(gè)很大的優(yōu)勢(shì)。

在VOIP實(shí)際應(yīng)用中,Middlebox功能可駐留在NAT/Firewall,通過(guò)軟交換設(shè)備(即MIDCOM Agent)對(duì)IP語(yǔ)音和視頻協(xié)議(H323、SIP、MGCP/H248)的識(shí)別和對(duì)NAT/Firewall的控制,來(lái)完成VOIP應(yīng)用穿越 NAT/Firewall .在安全性上,MIDCOM方式可支持控制報(bào)文的加密,可支持媒體流的加密,因此安全性比較高。

如果在軟交換設(shè)備上實(shí)現(xiàn)對(duì)SIP/H323/MGCP/H248協(xié)議的識(shí)別,就只需在軟交換和NAT/FW設(shè)備上增加MIDCOM協(xié)議即可,而且以后新的應(yīng)用業(yè)務(wù)識(shí)別隨著軟交換的支持而支持,此方案是一種比較有前途的解決方案,但要求現(xiàn)有的NAT/FW設(shè)備需升級(jí)支持MIDCOM協(xié)議,從這一點(diǎn)上來(lái)說(shuō),對(duì)已大量布署的NAT/FW設(shè)備來(lái)說(shuō),也是很困難的,同NAT/ALG方式有相同的問(wèn)題。

三、STUN 方式

解決穿透NAT問(wèn)題的另一思路是,私網(wǎng)中的VOIP終端通過(guò)某種機(jī)制預(yù)先得到出口NAT上的對(duì)外地址,然后在凈載中所填寫(xiě)的地址信息直接填寫(xiě)出口NAT上的對(duì)外地址,而不是私網(wǎng)內(nèi)終端的私有IP地址,這樣凈載中的內(nèi)容在經(jīng)過(guò)NAT時(shí)就無(wú)需被修改了,只需按普通NAT流程轉(zhuǎn)換報(bào)文頭的IP地址即可,凈載中的 IP地址信息和報(bào)文頭地址信息是一致的。STUN協(xié)議就是基于此思路來(lái)解決應(yīng)用層地址的轉(zhuǎn)換問(wèn)題。

STUN的全稱(chēng)是Simple Traversal of UDP Through Network Address Translators,即UDP對(duì)NAT的簡(jiǎn)單穿越方式。 應(yīng)用程序(即STUN CLIENT)向NAT外的STUN SERVER通過(guò)UDP發(fā)送請(qǐng)求STUN 消息,STUN SERVER收到請(qǐng)求消息,產(chǎn)生響應(yīng)消息,響應(yīng)消息中攜帶請(qǐng)求消息的源端口,即STUN CLIENT在NAT上對(duì)應(yīng)的外部端口。然后響應(yīng)消息通過(guò)NAT發(fā)送給STUN CLIENT,STUN CLIENT通過(guò)響應(yīng)消息體中的內(nèi)容得知其N(xiāo)AT上的外部地址,并將其填入以后呼叫協(xié)議的UDP負(fù)載中,告知對(duì)端,本端的RTP接收地址和端口號(hào)為NAT 外部的地址和端口號(hào)。由于通過(guò)STUN協(xié)議已在NAT上預(yù)先建立媒體流的NAT映射表項(xiàng),故媒體流可順利穿越NAT.

STUN協(xié)議最大的優(yōu)點(diǎn)是無(wú)需現(xiàn)有NAT/FW設(shè)備做任何改動(dòng)。由于實(shí)際應(yīng)用中,已有大量的NAT/FW,并且這些NAT/FW并不支持VoIP的應(yīng)用,如果用MIDCOM或NAT/ALG方式來(lái)解決此問(wèn)題,需要替換現(xiàn)有的NAT/FW,這是不太容易的。而采用STUN方式無(wú)需改動(dòng)NAT/FW,這是其最大優(yōu)勢(shì),同時(shí)STUN方式可在多個(gè)NAT串聯(lián)的網(wǎng)絡(luò)環(huán)境中使用,但MIDCOM方式則無(wú)法實(shí)現(xiàn)對(duì)多級(jí)NAT的有效控制。

STUN的局限性在于需要VOIP終端支持STUN CLIENT的功能,同時(shí)STUN并不適合支持TCP連接的穿越,因此不支持H323.另外STUN方式不支持對(duì)防火墻的穿越,不支持對(duì)稱(chēng)NAT (Symmetric NAT)類(lèi)型(在安全性要求較高的企業(yè)網(wǎng)中,出口NAT通常是這種類(lèi)型)穿越。

四、TURN方式

TURN方式解決NAT問(wèn)題的思路與STUN相似,也是私網(wǎng)中的VOIP終端通過(guò)某種機(jī)制預(yù)先得公網(wǎng)上的服務(wù)地址(STUN方式得到的地址為出口NAT上外部地址,TURN方式得到地址為T(mén)URN Server上的公網(wǎng)地址),然后在報(bào)文凈載中所要求的地址信息就直接填寫(xiě)該公網(wǎng)地址。

TURN的全稱(chēng)為T(mén)raversal Using Relay NAT,即通過(guò)Relay方式穿越NAT.TURN應(yīng)用模型通過(guò)分配TURN Server的地址和端口作為私網(wǎng)中VOIP終端對(duì)外的接受地址和端口,即私網(wǎng)終端發(fā)出的報(bào)文都要經(jīng)過(guò)TURN Server進(jìn)行Relay轉(zhuǎn)發(fā),這種方式除了具有STUN方式的優(yōu)點(diǎn)外,還解決了STUN應(yīng)用無(wú)法穿透對(duì)稱(chēng)NAT(Symmetric NAT)以及類(lèi)似的Firewall設(shè)備的缺陷,同時(shí)TURN支持基于TCP的應(yīng)用,如H323協(xié)議。此外TURN Server控制分配地址和端口,能分配RTP/RTCP地址對(duì)(RTCP端口號(hào)為RTP端口號(hào)加1)作為私網(wǎng)終端用戶的接受地址,避免了STUN方式中出口NAT對(duì)RTP/RTCP地址端口號(hào)的任意分配,使得客戶端無(wú)法收到對(duì)端發(fā)來(lái)的RTCP報(bào)文(對(duì)端發(fā)RTCP報(bào)文時(shí),目的端口號(hào)缺省按RTP端口號(hào)加 1發(fā)送)。

TURN的局限性在于需要VOIP終端支持TURN Client,這一點(diǎn)同STUN一樣對(duì)網(wǎng)絡(luò)終端有要求。此外,所有報(bào)文都必須經(jīng)過(guò)TURN Server轉(zhuǎn)發(fā),增大了包的延遲和丟包的可能性。

來(lái)源:C114


微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號(hào),免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):5G網(wǎng)絡(luò)AI應(yīng)用典型場(chǎng)景技術(shù)解決方案白皮書(shū)
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測(cè)試技術(shù)白皮書(shū)-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):6G至簡(jiǎn)無(wú)線接入網(wǎng)白皮書(shū)
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國(guó)聯(lián)通5G終端白皮書(shū)》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國(guó)電信5GNTN技術(shù)白皮書(shū)
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國(guó)移動(dòng)算力并網(wǎng)白皮書(shū)
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點(diǎn)本月熱點(diǎn)

     

      最熱通信招聘

    業(yè)界最新資訊


      最新招聘信息