方法不難,只要在sip.conf加上幾行字然後再NAT開啟相對應的PORT就可以了。首先進入sip.conf的編輯畫面,
然後在[general]輸入以下字串即可。

externhost = test.ddns.org ; 自己所使用的domani name
externip = 168.39.5.6 ; isp提供的IP位址,或者是自己的聯外IP。如果使用的是撥接式adsl,此行可以省略,但記得申請DDNS,用doman name來作為替代。
localnet = 192.168.1.0/255.255.255.0 ; 區域網路所使用的IP位址/netmask。
nat = yes

然後在NAT的設定部份需開啟如下的PORT
sip udp port 5002~5082
rtp udp port 10000~20000

設定好之後,在終端模式下輸入


amportal stop

amportal start


重新啟動server,之後就可以順利通過NAT了。

參考文獻
TrixBox behind a Nat Firewall
Asterisk (Trixbox) and NAT
sip trunk 問題
voip and nat
Asterisk SIP NAT solutions
STUN
voip+linux+aix research

2007/10/19
sip_nat.conf這一個檔案也必須設定,否則在某些情況下無法正常運作,如撥打到國外如中國都無法順利接通。但在台灣內撥打都很正常。
設定同sip.conf加入

externhost = test.ddns.org ; 自己所使用的domani name
externip = 168.39.5.6 ; isp提供的IP位址,或者是自己的聯外IP。如果使用的是撥接式adsl,此行可以省略,但記得申請DDNS,用doman name來作為替代。
localnet = 192.168.1.0/255.255.255.0 ; 區域網路所使用的IP位址/netmask。
nat=yes


這樣設定之後,運作上就正常了。原因為啥,就不得而知了.....

Technorati Tags: , , , , ,

創作者介紹

認真打雜好青年日誌

kennyp 發表在 痞客邦 PIXNET 留言(2) 人氣()


留言列表 (2)

發表留言
  • jameshung2006
  • 每一個字我都懂
    加起來全部不懂

    老爺爺真害哦~~~
  • 呃....別這樣說
    我沒這麼老啦(咳咳)

    kennyp 於 2007/10/17 22:53 回覆

  • 囧男
  • 你好 請問這種方式是一般的UA可以註冊至NAT內部SIP SEVER的方式嗎?
找更多相關文章與討論