Asterisk: sig_pri.c Received DISCONNECT cause code 27 (Destination out of order)
- Предупреждение в логе:
WARNING: sig_pri.c: Received DISCONNECT with cause code 27 (Destination out of order). - Входящие или исходящие вызовы прерываются сигналом «Сбой сети» / «Направление перегружено».
- SIP абоненты получают статус
SIP/2.0 502 Bad GatewayилиSIP/2.0 503 Service Unavailable. - На цифровой плате DAHDI фиксируются проскальзывания кадров (Clock Slips) или состояние RED/YELLOW Alarm.
1. Проверка состояния физического уровня и каналов DAHDI
Выполните проверку аварийных состояний платы потока E1/T1:
dahdi_tool
# или через консоль:
dahdi_scanПроверьте счетчик ошибок и проскальзываний тайминга:
cat /proc/dahdi/1Убедитесь в отсутствии ошибок Tx/Rx Alarms: RED/YELLOW/BLUE и постоянного роста Clock Slips.
2. Настройка синхронизации тактовой частоты в system.conf
Отредактируйте /etc/dahdi/system.conf. Значение timing priority должно быть установлено в 1 (синхронизация от оператора, slave-режим):
# span=<span num>,<timing priority>,<line build out>,<framing>,<coding>
span=1,1,0,ccs,hdb3,crc4
bchan=1-15,17-31
dchan=16
echocanceller=oslec,1-15,17-31
loadzone=ru
defaultzone=ru3. Перезагрузка модулей DAHDI и Asterisk
systemctl restart dahdi
asterisk -rx "dahdi restart"4. Проверка статуса D-канала сигнализации
asterisk -rx "pri show span 1"Убедитесь, что статус находится в состоянии Status: Provisioned, Up, Active.
Частые вопросы (FAQ)
Что означает Q.931 Cause 27?
Код Cause 27 указывает, что целевой шлюз, АТС назначения или сигнальный маршрут не функционируют, выведены из эксплуатации или не могут обработать сигнальные сообщения Q.931.
В чем разница между Cause 27 и Cause 38 (Network out of order)?
Cause 27 означает сбой на оборудовании конкретного абонента/транка назначения, тогда как Cause 38 сообщает о глобальной аварии в транзитной опорной сети оператора.
Почему возникают Clock Slips на плате DAHDI?
Clock Slips происходят из-за рассинхронизации опорного генератора тактовой частоты. Asterisk должен принимать частоту оператора (параметр 1 в timing priority), а не использовать свой внутренний генератор (0).
Какой код возвращается SIP-клиенту при возникновении Cause 27?
Asterisk возвращает статус SIP 502 (Bad Gateway).