Инструкция по преодалению ошибки 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

   
© ALLROUNDER