Polycom 未針對 Asterisk 註冊
我們辦公室裡有幾台 Polycom 301,還有 501、601 和 SoundStation 4001。最近,一些 301 和 4001 已經停止向 Trixbox/Asterisk 伺服器註冊,並且其他手機開始出現這種行為。他們能夠聯繫伺服器以獲取 IP 地址,聯繫 TFTP 伺服器進行配置,甚至上傳調試日誌,但註冊似乎超時。日誌例外如下。有任何想法嗎?
Asterisk 1.4.22 Trixbox 2.8.0 Polycom 3.0.1
0724113935|sip |3|03|Retry send 281 0724113939|sip |3|03|SendMessageFail 0724113939|sip |3|03|CUser::NewWorkingServer 1 to 279772128 0724113939|sip |3|03|SipOnEvNewWorkingServer User 0, old 0, new 0, expire 0 0724113939|sip |3|03|SipOnEvRegistrarUpdate User 0, index 0, state 0, expire 0, working 1 0724113939|sip |1|03|Client State finished REGISTER 0724113939|sip |3|03|SipStartFailOver 0 0724114008|sip |1|03|CreateFailOverProxyList : Reg to Domain '192.168.1.110' nPort 5060 0724114008|sip |1|03|CreateFailOverProxyList : For REGISTER Request nPort 5060 0724114008|sip |1|03|doDnsListLookup(udp): doDnsSrvLookupForARecordList for '192.168.1.110' port 5060 returned 1 results 0724114008|sip |1|03|doDnsListLookup(udp): result 0 '192.168.1.110' port 5060 0724114008|sip |1|03|CreateFailOverProxyList : Not NAPTR for '192.168.1.110' port 5060 IP 0 is '192.168.1.110' on udp port 5060 0724114008|sip |2|03|CreateFailOverProxyList : Exit with 1 IP Addresses 0724114008|sip |2|03|CreateFailOverProxyList : IP 1 is '192.168.1.110' on udp port 5060 0724114008|sip |0|03|>>> Data Send to 192.168.1.110:5060 0724114008|sip |0|03| REGISTER sip:192.168.1.110:5060 SIP/2.0 0724114008|sip |0|03| Via: SIP/2.0/UDP 192.168.1.248;branch=z9hG4bKdc51d87E89D17EA 0724114008|sip |0|03| From: "Joe Blow" ;tag=2FC4C6AD-D293EB4E 0724114008|sip |0|03| To: 0724114008|sip |0|03| CSeq: 1 REGISTER 0724114008|sip |0|03| Call-ID: 309e7d39-a17d681b-95fecaa4@192.168.1.248 0724114008|sip |0|03| Contact: ;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE 0724114008|sip |0|03| , REFER" 0724114008|sip |0|03| User-Agent: PolycomSoundPointIP-SPIP_301-UA/3.0.1.0032 0724114008|sip |0|03| Max-Forwards: 70 0724114008|sip |0|03| Expires: 3600 0724114008|sip |0|03| Content-Length: 0 0724114008|sip |0|03| 0724114009|sip |0|03|>>> Data Send to 192.168.1.110:5060 0724114009|sip |0|03| REGISTER sip:192.168.1.110:5060 SIP/2.0 0724114009|sip |0|03| Via: SIP/2.0/UDP 192.168.1.248;branch=z9hG4bKdc51d87E89D17EA 0724114009|sip |0|03| From: "Joe Blow" ;tag=2FC4C6AD-D293EB4E 0724114009|sip |0|03| To: 0724114009|sip |0|03| CSeq: 1 REGISTER 0724114009|sip |0|03| Call-ID: 309e7d39-a17d681b-95fecaa4@192.168.1.248 0724114009|sip |0|03| Contact: ;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE 0724114009|sip |0|03| , REFER" 0724114009|sip |0|03| User-Agent: PolycomSoundPointIP-SPIP_301-UA/3.0.1.0032 0724114009|sip |0|03| Max-Forwards: 70 0724114009|sip |0|03| Expires: 3600 0724114009|sip |0|03| Content-Length: 0
經過幾週的電話慢慢當機後,我們聘請了一家諮詢公司,該公司確定防火牆配置不允許 LAN 上的埠 5060 UDP。埠 5060 是 VoIP 的 SIP 協議使用的預設埠,因此它會阻止某些電話連接到伺服器。由於某些原因,正在工作的電話已經通過了防火牆,因此能夠連接到 Trixbox 應用程序。
他們添加了一條規則以允許埠 5060 UDP,但僅在 eth0(這是 LAN 介面)上。我們保存了 iptables 規則,即使伺服器重新啟動,它也會保留。這是添加的該規則的命令:
iptables -I INPUT 27 -p udp -m udp --dport 5060 -i eth0 -j ACCEPT
對於那些感興趣的人,我們聘請了Teliphone Orion的服務來解決這個問題。他們在很短的時間內發現並解決了這個問題。
打開 Asterisk 控制台 (
asterisk -r
),啟用 SIP 調試 (sip set debug ip yourphonesip
) 並註冊電話。檢查您是否看到 REGISTER 數據包以及是否有任何回復和/或錯誤消息。這只是一個交換網路還是在 Asterisk 和手機之間還有其他設備?
在您發表評論後進行編輯:此時,我想確保手機的流量實際到達 Asterisk 伺服器 - 在伺服器上執行 tcpdump,也可能在手機附近的某個地方執行。如果 REGISTER 數據包到達伺服器但沒有顯示在 Asterisk 的日誌中(加上電話正在與另一個 Asterisk 一起工作,正如您測試的那樣),那麼 Asterisk 端出了點問題。
另一方面,如果即使使用 tcpdump 也看不到手機的 REGISTER 請求,那麼您必須找到它們失去的位置——在網路中的不同點進行更多的嗅探。
此外,這是關於 Polycom 未註冊的討論,最後一篇文章有“本地配置重置”的說明——也許這就是你需要的魔法。