2013-10-23 71 views
1

我正在爲NAT(SIP協議)後面的VoIP開發STUN .. 我有幾個路由器供使用..我發現路由器正在更改SIP用於NAT穿越的消息(SDP和聯繫人字段)... 如果我在路由器中禁用SIP ALG,則不轉發SIP數據包 ..有任何設置,以便路由器不會放置任何SIP智能,只需轉發數據包並不改變SIP數據包。在路由器中禁用SIP ALG時,沒有SIP數據包被路由

感謝和問候

+0

路由器模型很重要。其中一些已知的不是SIP友好的。雖然我從來沒有看到一個路由器,當禁用SIP ALG時,不會將TCP/UDP轉發到5060。我認爲你正在開發STUN客戶端? –

回答

0

購買一個新的路由器。嚴重的是,2013年存在的仍然試圖翻譯應用程序協議(除FTP之外)和修改消息內容(超出IP標頭)的任何NAT都應該被拋出。

您的SIP流量是通過TCP還是UDP發送的?是否有SIP網關?或者你是否試圖在沒有信令服務器的兩個端點之間進行SIP INVITE?

在任何情況下....這個問題的標準解決方案是SIP消息應該通過TLS/SSL(加密)發送到SIP網關。您的路由器將無法解釋這些消息,並將其視爲標準TCP流量。

如果你爲兩個端點編碼,更簡單的解決方法是簡單地base64編碼你的消息

+0

中間有一個SIP服務器,但服務器中的設置已啓用,不對SIP數據包進行任何更改。 – user2139084