Если вы настроили в астериске (или у вас fron-end FreePBX) sip транк провайдера IP телефонии, но исходящая связь не работает, а в выводе команды:
# asterisk -rx "sip show peers"
вы видите что ваш sip trunk UNREACHABLE в поле Status, то проверьте следующие настройки:
- Отключите опцию qualify на соответствующем пире:
qualify=no
это отключит периодическую проверку пира на доступность. Если после этого исходящая связь через данный транк заработала, то значит провайдер не отвечает на проверочные пакеты (в asterisk используются пакеты OPTIONS с нулевой длиной). Возможную причину этого смотрите далее
- Если у вас asterisk (FreePBX) за NAT (любого типа) проверьте настройки в части указания внешнего IP:
- в FreePBX найдите нужные опции по пути Settings -> Asterisk SIP settings
- или в sip.conf:
externip=a.b.c.d
- В сложных случаях вы всегда можете детально разобраться включив debug режим в консоли астериска (asterisk -r):
pbx*CLI> sip set debug on SIP Debugging enabled pbx*CLI> core set debug 99 Core debug was 0 and is now 99 pbx*CLI> core set verbose 99 Verbosity was 0 and is now 99