Хорошо, если пропадания не чаще раза в минуту.. sip.conf только, не extensions.conf :)
Zavr2008 ( 2015-06-09 12:08:22 +0400 )редактироватьВсем привет,
Схема такая: Internet <-> Router <-> Asterisk
Asterisk и все клиенты за NAT, на роутере три провайдера и bash скрипт который мониторит интернет и разбрасывает локалку меджу активными соединениями, есть два SIP транка sipnet.ru и sip.skype.com, как правильно настроить Asterisk на динамическое переключение между провайдерами при пропадении интернета. Пока только одна мысль: менять externalip при переключении канала.
Спасибо
Делал такое. Самый простой способ.
Три файла extensions.conf.1 extensions.conf.2 extensions.conf.3 в которых прописан разный externalip.
Скрип который определяет внешний IP и соответственно копирует extensions.conf.Х в extensions.conf и делает asterisk -rx "sip reload".
Скрипт в crond раз в минуту ну или как Вам душа пожелает.
Хорошо, если пропадания не чаще раза в минуту.. sip.conf только, не extensions.conf :)
Zavr2008 ( 2015-06-09 12:08:22 +0400 )редактироватьОбсуждалось не раз тут.
Я за астера в облаке и VPN до локалки любым из 3 доступных маршрутов.
плюсом если входящий и увы все 3 канала - легли, можно хоть на сотовый сделать переадресацию :)
Zavr2008 ( 2015-06-09 02:31:54 +0400 )редактироватьЗадан: 2015-06-08 22:05:27 +0400
Просмотрен: 289 раз
Обновлен: Jun 09 '15
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
Значит как я и собирался сделать, Спасибо.
P.S. Вместо копирования достаточно: sed -i "s/externalip=x.x.x.x/externalip=y.y.y.y/" /etc/asterisk/sip.conf
P.S. У нас PRI на Asterisk и 100 офисных VoIP телефонов, локальный сервер, в данном случае, на мой взгляд, более подходящий вариант. И если все три упадут, будут звонит за границу через PRI.
yannails ( 2015-06-09 14:28:45 +0400 )редактироватьsed -i "s/externalip=x.x.x.x/externalip=y.y.y.y/" /etc/asterisk/sip.conf
Не плохое предложение, но сначала нужно узнать какой IP там сейчас прописан. Это усложнит скрипт. Мой вариант, как я сказал, самый простой.
amonra ( 2015-06-09 17:25:47 +0400 )редактироватьНу это вы уже к словам цепляетесь :)
Заменяем любой IP на 1.1.1.1: sed -i "s/externip=([0-9]{1,3}.){3}[0-9]{1,3}/externip=1.1.1.1/" /etc/asterisk/sip.conf
Ну теперь мой вариант самый простой :)
yannails ( 2015-06-10 00:13:30 +0400 )редактировать