Инструкция по преодалению ошибки Registry timeout.
При чрезвычайной смене ip внешнего маршрутизатора, это бывает при сбоях основного канала и при переходе на резерв, при ошибках в балансировке нагрузке на канал и т.д. Sip регистрация как бы «подвисает». При регистрации транка у провайдера ip-телефонии, asterisk выдает ошибку Registry timeout. Система провайдера получая запросы на регистрацию от астериска с таким же внутренним ip и mak-ом, но с другим внешним ip, считают их ошибочными и не реагируют на них. Рестарт asterisk-ка не решает проблемы.
Замечено, что при смене внутреннего ip сервера, провайдер ip-телефонии начинает принимать запросы на регистрацию транков.
Чтобы поменять ip астериска для регистрации у провайдера, не нарушая работу внутренних абонентов, нужно выполнить следующие операции:
Смотрим на каком интерфейсе внутренний ip
[root@aster ~]#ifconfig
eth0 Link encap:Ethernet HWaddr 00:25:22:F1:30:37
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::225:22ff:fef1:3037/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3991677 errors:0 dropped:0 overruns:0 frame:0
TX packets:4239897 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:904784665 (862.8 MiB) TX bytes:1866182420 (1.7 GiB)
Interrupt:27 Base address:0x6000
добавляем к нему виртуальный из этой же подсетки:
[root@aster ~]#/sbin/ifconfig eth0:1 192.168.1.210
проверяем:
[root@aster ~]#ifconfig
eth0 Link encap:Ethernet HWaddr 00:25:22:F1:30:37
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::225:22ff:fef1:3037/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3996892 errors:0 dropped:0 overruns:0 frame:0
TX packets:4244045 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:906090548 (864.1 MiB) TX bytes:1867551029 (1.7 GiB)
Interrupt:27 Base address:0x6000
eth0:1 Link encap:Ethernet HWaddr 00:25:22:F1:30:37
inet addr:192.168.1.210 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:27 Base address:0x6000
Смотрим таблицу маршрутизации:
[root@aster ~]#route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
Добавляем к таблице маршрутизации путь к хосту нашего проблемного провайдера через вирнуальный адаптер:
[root@aster ~]#/sbin/route add -host voip.mtt.ru gw 192.168.1.1 dev eth0:1
Проверяем:
[root@aster ~]#route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
80.75.132.66 192.168.1.1 255.255.255.255 UGH 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
Видим, что появилась новая запись в таблице маршрутизации, путь к ip 80.75.132.66 нашего проблемного провайдера идет через ip 192.168.1.1
Проверяем, работает ли:
[root@aster ~]# ping -n voip.mtt.ru
Заходим в консоль астериска и проверяем регистрации:
[root@aster ~]# asterisk -rvvv
Asterisk 11.6.0, Copyright (C) 1999 - 2013 Digium, Inc. and others.
Created by Mark Spencer <Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk 11.6.0 currently running on aster (pid = 1676)
aster*CLI> sip show registry
Host dnsmgr Username Refresh State Reg.Time
voip.mtt.ru:5060 Y test888 285 Registered Mon, 20 Jul 2015 23:11:08
1 SIP registrations.
aster*CLI>
Отлично!!!
Теперь меняем все обратно и проверяем.
[root@aster ~]#/sbin/route del -host voip.mtt.ru gw 192.168.1.1 dev eth0:1
[root@aster ~]#/sbin/ifconfig eth0:1 192.168.1.210 down
[root@aster ~]#ifconfig