Asterisk STUN
Подскажите в чём может быть проблема. Для обеспечения отказоустойчивости офис имеет два ISP, в момент когда основной отказывает возникает проблема с необходимостью вручную менять Externaddr для asterisk. Теоретически эту проблему должен решить stun. Настроил, команда stun show status говорит что stun работает.
Hostname Port Period Retries Status ExternAddr ExternPort
stun.sipnet.ru 3478 30 3 OK 5.61.8.78 36901
Но при анализе сообщений SIP и RTP протоколов вижу что используется локальный ip. Подскажите кто настраивал, в чём может быть проблема.
Astrisk 11.10
sip.conf
icesupport=yes
;externaddr=5.61.8.78 //при раскомментировании данные в SIP верные
rtp.conf
icesupport=yes
stundaddr=stun.sipnet.ru
res_stun_monitor.conf
stunaddr=stun.sipnet.ru
Это делается довольно просто.
Далее просто на основном в случае проблем со своим прямым Dial вызывать Dial через вспомогательный.
Будет и надежно и просто.
_________________
http://mh.otx.ru Гибкие SIP/E1 шлюзы Alvis. SIP-Модернизация LDK/TDA:VoIP, Добавь E1 к Asterisk.
UPDATE! Теперь и T.38! Скидки для форумчан!!
Через крон он запускался периодически и проверял внешний ip адресс. Если он изменился (перешли на альтернативного провайдера), в sip.conf подменялся ip адресс на текущий и выполнялась команда sip reload.
и не забудьте активировать exec в asterisk.conf
Добрый день!
Голый скрипт работает не корректно, wget возвращает наполнение страницы....в общем не определяет он
Я переделал на externip=`curl -s http://getip.krisk.org`
Теперь вопрос, что за exect в asterisk.conf?
Я в скриптах не силён, но я так понимаю он помогает только определить ip? Замену в sip.conf он не делает же?
Added after 9 minutes:
А, извиняюсь, кажется начал понимать как это работает
Вызываем так: exec путь_к_sip.conf путь_к_скрипту?
В итоге получаю:
-bash: /etc/asterisk/sip.conf: Отказано в доступе
rtp.conf
stundaddr=stun.sipnet.ru
res_stun_monitor.conf // по документации digium изменения в этом конфиге не обязательны
stunaddr=stun.sipnet.ru