Asterisk: Unable to open D-channel on span (PRI D-channel Down)
- В журнале Asterisk фиксируется
ERROR[4567]: chan_dahdi.c: Unable to open D-channel on span 1 (PRI D-channel Down). - Все входящие и исходящие звонки через плату потока E1 (Digium, Sangoma, OpenVox) мгновенно сбрасываются.
- Команда
pri show spansпоказывает статусDown, ActiveилиDown, In Alarm. - На физической плате горит красный индикатор (Red Alarm).
1. Проверка состояния DAHDI на уровне ядра Linux
dahdi_scan
dahdi_hardware
cat /proc/dahdi/*2. Проверка конфигурации разметки таймслотов /etc/dahdi/system.conf
Для стандартного потока E1 таймслот 16 должен быть выделен под сигнальный D-канал (dchan), а слоты 1-15 и 17-31 — под голос (bchan):
# /etc/dahdi/system.conf
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
dahdi_cfg -vv4. Конфигурация chan_dahdi.conf в Asterisk
Откройте /etc/asterisk/chan_dahdi.conf:
[trunkgroups]
[channels]
context = from-pstn
switchtype = euroisdn
signalling = pri_cpe ; абонентская сторона (или pri_net для режима станции)
group = 1
channel => 1-15,17-315. Проверка статуса D-канала и отладка Q.921/Q.931 в CLI
asterisk -rx "pri show span 1"
asterisk -rx "pri set debug 2 span 1" Частые вопросы (FAQ)
В чем разница между signalling = pri_cpe и pri_net?
pri_cpe (Customer Premises Equipment) используется, если Asterisk подключается к оборудованию провайдера связи. pri_net (Network) используется, если Asterisk сам выступает в роли АТС/городской станции (например, при подключении внутренней кнопочной мини-АТС).
Что означает физический Red Alarm на плате E1?
Red Alarm указывает на полное отсутствие входящего сигнала (обрыв кабеля, неподключенный разъем RJ-48, перепутанные пары TX/RX или отсутствие несущей частоты от оператора).
Зачем нужен протокол Q.921 (LAPD)?
Q.921 обеспечивает канальный уровень (L2) передачи данных поверх D-канала (16-й таймслот). Пока уровень Q.921 не перейдет в состояние Multiple frame established (TEI assigned), сигнальный обмен Q.931 (L3) не начнется.
Как переобжать кабель RJ-48 для потока E1?
Стандартная распиновка E1 RJ-48C: контакты 1 и 2 — прием (RX+ / RX-), контакты 4 и 5 — передача (TX+ / TX-). При прямом подключении Back-to-Back RX и TX должны быть перекрещены (crossover).