「Asterisk NAT」の版間の差分
提供: VoIP-Info.jp
(→AsteriskサーバがNAT背後) |
(→AsteriskサーバがNAT背後) |
||
21行目: | 21行目: | ||
==AsteriskサーバがNAT背後== | ==AsteriskサーバがNAT背後== | ||
この場合は、かなりやっかいです。接続ないしRegisterする相手側がAsteriskの場合で、グローバルIPアドレスを持つ場合には相手にnat=yesを記述してもらえれば解決しますが、そうでない場合には対向先の状況にかなり依存するようです。<br> | この場合は、かなりやっかいです。接続ないしRegisterする相手側がAsteriskの場合で、グローバルIPアドレスを持つ場合には相手にnat=yesを記述してもらえれば解決しますが、そうでない場合には対向先の状況にかなり依存するようです。<br> | ||
+ | ===対応1=== | ||
+ | sip.confのgeneralセクションに以下のように記述してみます。 | ||
+ | externip=xxx.xxx.xxx.xxx | ||
+ | externhost=sip.hogehoge.net | ||
+ | localnet=192.168.0.0/255.255.0.0 | ||
+ | 外側のIPアドレスが不明な場合にはDDNS(Dynamic DNS)サービスを利用するなどしてextenhost=を記述します。<br> | ||
+ | ルータのNATを調整し、SIP(5060/UDP)とRTP(デフォルトでは10000~20000/UDP)をAsteriskサーバのローカルIPアドレスに向けます。<br> | ||
+ | ただし、これらの対処を行ってもRegisterできないITSPがあります。<br> |
2008年6月23日 (月) 23:36時点における版
Asteriskサーバがグローバル、端末がNAT背後
Asteriskサーバ側がグローバルIPアドレスを持ち、それにアクセスする端末側がNAT背後にある場合の対応は比較的簡単です。
sip.confの各セクションに次のように記述します。
[201] type=friend username=201 secret=***** context=default host=dynamic canreinvite=no callgroup=1 pickupgroup=1 dtmfmode=rfc2833 disallow=all allow=ulaw qualify=1000 nat=yes
nat=yesを記述します。また相手(端末側)のNATテーブルをキープするためにqualify=1000(単位はミリ秒)を記述しておくと良いでしょう。遅延の大きい端末相手ならば2000あたりに設定します。
この方法でフリースポットやM-Zoneなどのホットスポット系から使用できることを確認しています。
AsteriskサーバがNAT背後
この場合は、かなりやっかいです。接続ないしRegisterする相手側がAsteriskの場合で、グローバルIPアドレスを持つ場合には相手にnat=yesを記述してもらえれば解決しますが、そうでない場合には対向先の状況にかなり依存するようです。
対応1
sip.confのgeneralセクションに以下のように記述してみます。
externip=xxx.xxx.xxx.xxx externhost=sip.hogehoge.net localnet=192.168.0.0/255.255.0.0
外側のIPアドレスが不明な場合にはDDNS(Dynamic DNS)サービスを利用するなどしてextenhost=を記述します。
ルータのNATを調整し、SIP(5060/UDP)とRTP(デフォルトでは10000~20000/UDP)をAsteriskサーバのローカルIPアドレスに向けます。
ただし、これらの対処を行ってもRegisterできないITSPがあります。