軟交換在收到INVITE消息并做相應(yīng)處理后 , 預(yù)備將其轉(zhuǎn)發(fā)給B , 由于B也是通過NAT/FW Proxy代理注冊到軟交換的 , 因此發(fā)送的消息如圖8所示 , 由NAT/FW PROXY接收并做代理轉(zhuǎn)換后 , 發(fā)送給B外層的路由器或防火墻 , 轉(zhuǎn)換結(jié)果如圖9所示 。
防火墻通過查詢自己維護的連接列表 , 就可以把這條信令消息正確的發(fā)送給終端B了 。呼叫接續(xù)流程的其它信令消息 , 轉(zhuǎn)接方式與INVITE類似 。
4. 用NAT/FW Proxy實現(xiàn)媒體流的代理連接
以圖5中終端A呼叫終端C為例 , 當(dāng)A發(fā)出INVITE消息并到達NAT/FW Proxy后 , NAT/FW Proxy會為A分配兩個RTP代理端口 , 一個是呼出代理端口 , 記為A1 , 另一個是呼入代理端口 , 記為A2 。NAT/FW Proxy使用A2的端口信息替換原INVITE消息中SDP包中對RTP端口的描述 , 并發(fā)給軟交換 。當(dāng)軟交換發(fā)回終端C的SDP信息時 , NAT/FW Proxy記錄終端C的實際RTP端口 , 并用A1的端口信息進行替換 , 發(fā)給終端A 。當(dāng)呼叫建立后 , 終端A一旦開始發(fā)送RTP包 , 就會在私網(wǎng)設(shè)備上建立一個臨時的RTP“窗口” , 只要媒體流不斷在發(fā)送(在沒有話音時終端也應(yīng)該發(fā)送舒適噪聲的RTP包) , 這個“窗口”就一直打開 。由于設(shè)備A得到的對端RTP端口實際是NAT/FW Proxy上的呼出代理端口A1 , 因此RTP包會發(fā)向NAT/FW Proxy , NAT/FW Proxy將RTP包再發(fā)給終端C真正的RTP端口 。同樣 , 終端C得到的A的RTP端口實際是NAT/FW Proxy上的代理端口A2 , 所以RTP包會發(fā)向A2 , 然后由NAT/FW Proxy通過私網(wǎng)設(shè)備上的臨時RTP“窗口”將RTP包轉(zhuǎn)發(fā)給終端A 。
當(dāng)兩個設(shè)備分別在兩個防火墻內(nèi) , 且都注冊到一個NAT/FW Proxy上時 , 如圖5中終端A呼叫終端B的情況 , 由于NAT/FW Proxy可以知道兩個設(shè)備都是注冊在自己上面的 , 因此并不需要為每個終端都分配兩個代理端口 , 而只用分配一對端口 。如A1和B1 , 其中A1既作為終端A的呼出端口 , 也做為終端B的呼入端口 , 而B1既做為終端B的呼出端口 , 也做為終端A的呼入端口 。假如終端A和終端B還是處于同一個私網(wǎng)網(wǎng)關(guān)設(shè)備之下 , NAT/FW Proxy完全可以不為它們分配任何代理端口 , 而是讓它們在私網(wǎng)內(nèi)部直接建立RTP流的連接 。
5. 其它問題的考慮
以上對于使用NAT/FW Proxy來實現(xiàn)私網(wǎng)穿越的方法的描述 , 都是基于使用SIP協(xié)議的終端 , 但實際上這種方法并不僅限于SIP終端 , 當(dāng)終端使用H.248 , MGCP等協(xié)議時 , 只要有對應(yīng)的NAT/FW Proxy支持 , 也同樣可以實現(xiàn)私網(wǎng)穿越 。
從構(gòu)架上看 , 需要進行私網(wǎng)穿越代理的設(shè)備非常多 , 一臺NAT/FW Proxy無法處理時 , 完全可以部署多個NAT/FW Proxy , 并讓這些設(shè)備注冊到不同的NAT/FW Proxy上 。如配置一臺NAT/FW Proxy處理SIP終端的私網(wǎng)穿越 , 配置兩臺NAT/FW Proxy來處理MGCP終端的私網(wǎng)穿越等 。
四、在軟交換體系中的擴展應(yīng)用
使用NAT/FW Proxy的構(gòu)架 , 除了能夠?qū)崿F(xiàn)私網(wǎng)穿越的功能外 , 只要稍加擴展 , 還可以為軟交換體系帶來其他一些意外收獲 。
1.可以保護軟交換設(shè)備免遭攻擊
在正常的配置情況下 , 軟交換設(shè)備的地址對于所有用戶都是可見的 , 這時假如有人惡意的對軟交換發(fā)起某些攻擊 , 比如DoS攻擊 , 是比較難以防范的 。但是假如要求所有終端都注冊到NAT/FW Proxy設(shè)備上 , 通過NAT/FW Proxy的代理與軟交換發(fā)生聯(lián)系 , 那么軟交換地址對外就完全是不可見的了 , 并且由于NAT/FW Proxy設(shè)備的成本相對低廉 , 可以配置多個 , 即使遭到攻擊 , 只要讓終端上更換一個NAT/FW Proxy進行注冊就可以了 。
2.防止通信欺詐行為
一般情況下 , 一旦軟交換為雙方建立起呼叫 , 那么雙方終端的地址、端口、媒體能力等就完全向?qū)Ψ酵该骰?, 這時假如有人使用一些支持點對點連接的終端 , 繞過軟交換而直接向?qū)Ψ桨l(fā)起連接 , 則軟交換就無法進行計費 , 也就會出現(xiàn)通信欺詐行為了 。假如按照1中所述 , 把所有終端都注冊到NAT/FW Proxy上 , 那么終端只能通過NAT/FW Proxy上的代理端口進行交互 , 終端之間透明的只有對方的號碼 , 這樣可以在很大程度上避免欺詐行為的發(fā)生 。
推薦閱讀
- 17app如何關(guān)閉直播 關(guān)閉17app直播方法詳解
- 魅族Pro5怎么插卡 魅族Pro5手機SIM/TF卡安裝圖文詳解
- 華為手機金卡會員有什么用 金卡會員特權(quán)/激活詳解
- 小米貸款怎么用 小米貸款開通/貸款/還款步驟詳解
- 華為Mate S用什么手機SIM卡 華為Mate S手機卡規(guī)格詳解
- 1 新款無線網(wǎng)絡(luò)標(biāo)準(zhǔn)VoIP詳解
- 詳解OK988的軟件功能之一
- cf貓爪手套怎么得
- 解析軟交換系統(tǒng)中的私網(wǎng)地址轉(zhuǎn)換
- 華為榮耀7i手機卡/SIM卡安裝圖文詳解
