將 SIP 電話 (X-Lite) 註冊到星號伺服器 (asteriskNow)
我們目前有一個學校項目,我們需要用 Asterisk 建立一個 PBX。因此,我們在 ubuntu 12.10 的虛擬環境(帶有 virtualBox)中安裝了 asteriskNow。我們通過在本地網路中通過 X-Lite 註冊一些 SIP 電話來嘗試配置,並且成功了。但是現在,我們也希望能夠從 Internet 訪問伺服器 - 這就是我們正在努力解決的問題……這是我們迄今為止所做的:
- 在 X-Lite 中,我們指定了星號伺服器所在的本地網路調製解調器的 IP。
- 在調製解調器上,我們將埠 5060 上的所有傳入請求轉發到本地路由器,該路由器將所有請求轉發到星號伺服器的本地 IP。
- 我們將星號伺服器的 IP 配置為靜態的。
- 我們禁用了 ubuntu 防火牆
現在,我知道這是對我們問題的非常模糊的描述,錯誤可能在任何地方——但我們甚至不知道從哪裡開始尋找錯誤。您對我們能做什麼有什麼建議嗎?可能會有wireshark有幫助嗎?非常感謝任何資訊、幫助或建議(如果您知道如何使用 freepbx 設置星號的好教程)!
一般幾點——
- Asterisk 在虛擬機中的表現很差。
我不知道他們是否有這方面的具體指導,但我的經驗是,即使在高端 VMWare 環境中,使用虛擬化 VoIP 伺服器也會遇到各種奇怪的問題。
我強烈建議對專用物理硬體進行故障排除。
SIP
(Asterisk 背後的 VoIP 協議)討厭NATSIP 從來沒有真正設計用於網路地址轉換。
再一次,嘗試在不涉及 NAT 或路由的情況下讓事情在同一個子網上工作,然後再繼續執行更困難的任務。
與 NAT 相關的問題通常比註冊更能影響呼叫,如果你在Google周圍搜尋,有很多關於如何處理它的資訊。
- 在排除 VoIP 故障時,一個好的數據包嗅探器是您的朋友
如果您觀察來回傳輸的數據,您可能會合理地了解問題出在哪裡。
所以基本上 - 首先讓事情在你的防火牆內工作。然後慢慢地處理穿越防火牆和 NAT。
就 Asterisk 教程而言,這些在網路上比比皆是(而且 Server Fault 並不是真正的“給我找教程”的資源——Google 比以往任何時候都更好地了解這些東西)。
如果您是 VoIP 的新手,我肯定會推薦使用預打包的 Asterisk 發行版——AsteriskNOW 應該沒問題,但我個人在生產中使用 FreePBX 發行版並且使用它取得了出色的效果(並且它擅長自動配置 NAT - 相關問題,這讓我有些頭疼。)