PBX > Tools > File Editor > File: sip_nat.conf,增加以下兩行。
externip=aaa.aaa.aaa.aaa localnet=bbb.bbb.bbb.bbb/255.255.255.0
externip - 主機所對應的外部網路 IP
localnet - 與主機在同一個LAN,所有內部分機的內部網路之網段,如有 vLan 環境可設多組網段。
aaa.aaa.aaa.aaa 外部網路 IP 位址
bbb.bbb.bbb.bbb 內部網路的子網路定義,例如 192.168.1.0。
如果沒有固定的 IP,可以使用 DDNS 服務,且設定將 externip 改成 externhost,並填寫正確的主機 FQDN 名稱。
externhost=mypbx.mydomain.com
變更設定後需重啟服務,才會生效。
檢查設定是否有被套用:
# Asterisk -rx "sip show settings"
Network Settings:
---------------------------
SIP address remapping: Enabled using externip
Externhost: <none>
Externip: 123.123.123.123:5060
Externrefresh: 10
Internal IP: 127.0.0.1:5060
Localnet: 192.168.9.0/255.255.255.0
STUN server: 0.0.0.0:0
注意:新版的 Asterisk 1.8+ 已經將 externip 改成 externaddr
這裡的設定程序會依實際使用的設備而有所不同,不過大致區分有兩種作法:
使用另一台在外網的 Linux 電腦,執行以下指令,偵測對方主機是否開啟 port 5060。
//若對方主機的網路未封鎖 ping 指令,請用
#>nmap -sU -p 5060 <對方主機 IP 位址>
//若對方主機的網路封鎖 ping 指令,請用
#>nmap -P0 -p 5060 <對方主機 IP 位址>
通訊埠可連線時狀態
Starting Nmap 4.68 ( http://nmap.org ) at 2009-01-23 18:51 PST Interesting ports on 192.168.1.254: PORT STATE SERVICE 5060/udp open|filtered sip
通訊埠不可連線時狀態
Starting Nmap 4.68 ( http://nmap.org ) at 2009-01-23 19:12 PST Interesting ports on 192.168.1.254: PORT STATE SERVICE 5060/udp closed sip
基於網路使用的安全性,VoIP 的基礎網路架構一定免不了要用到 NAT 網路,然而市售的 Router 其廠牌與售價又非常之混亂,若只是將它們用於一般上網、玩遊戲,可能差別不大;若要應用在 VoIP 的語音通訊上,可就不一定每個都能擔此重任了。
有些設備對於 VoIP 通訊不是這麼相容,有可能會衍生一些奇奇怪怪的問題,故挑選一個正確的 Router 對於 VoIP 通訊是非常重要的,設備除了非親自使用過以外,採購前也可以參考這個網站的列表 http://businesssupport.vonage.com/ap...1546/kw/router 。
Images 0 | ||
---|---|---|
No images to display in the gallery. |
externip=aaa.aaa.aaa.aaa
externhost=xyzxyz.domain.com
嗎?
如果只設置externhost=xyzxyz.domain.com,而不設置externip的話,由遠端的分機(Soft Phone)撥其他分機或撥出市話,會不會只有單方通話(一方能聽到,另一方則聽不到對方的聲音)的問題?
我是在實際使用中遇到這樣(單通)的問題,不知是不是因為只設置了externhost,而沒設置externip?
這個要視主機的外部 IP 是否為固定
- 若是,要設 externip。
- 若不是,要設 externhost
不過,這兩個參數與單通的問題,比較沒直接關係,請檢查防火牆規則。
nmap -P0 -p 5060 <對方主機 IP 位址>看到的总是5060/tcp closed sip