(無償) logo
世界中で使われるISO標準オフィスソフト(MSオフィス互換)

★LibreOfficeの導入事例★
詳細について

2017年3月23日木曜日

【Asterisk 11.17.1】VOIPゲートウェイへ断続的に繰り返す再レジストの問題について

VOIPゲートウェイへ、AsteriskからのSIPレジストが何度もやり直しされていた。
これは複数のVOIPゲートウェイに対して発生していた。
VOIPゲートウェイのログを確認してわかった。

20時半以前は、連日、こういう問題は発生していなかった。
20時半以降になると、連日、この問題が発生していて、それぞれ少なくとも0時半くらいまで続いた。

問題が発生する時にに、asterisk -rvvvv でモニターしていると、
sip_reg_timeout というエラーが大量に発生していた。

時間帯によって発生の有無が変化することから、AsteriskやVOIPゲートウェイの問題だとは考えにくかった。
時間帯の影響を受けるのは、インターネットである。
当環境では、AsteriskサーバとVoipゲートウェアの間にはインターネットがある。


<追伸 2018年2月25日>
レジスト先がDNS名で指定されている場合、名前解決で失敗している可能性もあります。
その場合、DNSMASQという簡易DNSキャッシュサーバをAsterisk動作のローカルマシンで動作させて、
Asterisk(ホストマシンのリゾルバ)がこのDNSキャッシュサーバを用いて名前解決するように設定すれば解消するかもしれません。

DNSMASQについては次のページを参考にしてください。
http://akira-arets.blogspot.jp/2017/04/centos6-dnsmasq-settings.html
http://akira-arets.blogspot.jp/2017/10/linux-centos7-dnsmasq.html



■途切れやすいネット回線を用いている場合、VOIPゲートウェイ等へのSIPレジストリが喪失する(†2)

信頼性の低い回線を用いている場合、AsteriskとVOIPゲートウェイ間のコネクションが断続する。
このようなとき、AsteriskからVOIPゲートウェイなどへのSIPレジストリが失われてしまう。

そこで、sip.confの [general] セクションに、次のパラーメーターをセットすることで対策する。

・ registerattempts
registerattempts=0 と設定することによって、ASTERISKは成功するまでSIPレジストラサーバに再レジストを繰り返す。
・ registertimeout
デフォルトは20秒である。ASTERISKがレジスト要求をかけてから、SIPレジストラサーバが応答してくるまでの待ち時間を設定する。(再レジストの間隔を秒数で指定するとも言える。)


下記、参考ページ(†1)では、WAN上の障害のためにレジストが繰り返し発生したのではないかということだった。対策についても提案されていた。

 externrefresh=120
 registertimeout=120

externrefresh = Number : Specify how often (in seconds) a hostname DNS lookup should be performed for the value entered in 'externhost'. Default 10 seconds. (New in Asterisk 1.2.x). (†2)
registertimeout = Number : Number of seconds to wait for a response from a SIP Registrar before classifying the SIP REGISTER has timed out. Default 20 seconds. (New in v1.2.x). (†2)

externrefresh の値を大きくすると、VOIPゲートウェイアドレスを参照するDNSルックアップの頻度が少なくなる。

registertimeout の値を大きくすると、AsteriskからのSIPレジストメッセージに対するVOIPゲートウェイからの応答について待ち時間が拡大する。




<参考>

1、Topic: asterisk[1559]: NOTICE[1599]: chan_sip.c:13673 in sip_reg_timeout
< http://forums.askozia.com/index.php?topic=2476.0 > 2017年3月23日

2、Asterisk config sip.conf
< https://www.voip-info.org/wiki-Asterisk+config+sip.conf > 2017年3月23日

3、Asterisk sip qualify / SIP.conf: device configuration - qualify
< https://www.voip-info.org/wiki/view/Asterisk+sip+qualify > 2017年4月19日