Как настроить SIP-транк NEC SV8300 и Asterisk: руководство
Подробное пошаговое руководство по настройке SIP-транка между NEC SV8300 и Asterisk для новичков. Настройка sip.conf, PC Programming, диагностика проблем с REGISTER и INVITE, кодеки, фаервол.
Как настроить SIP-транк между NEC SV8300 и Asterisk? Подробное руководство для новичков
Пытаюсь настроить SIP-транк между NEC SV8300 (IP: 192.168.10.36) и Asterisk (IP: 192.168.20.30). Устройства в разных подсетях, но互相 видят, трафик проходит. Лицензия на транки есть.
Следовал инструкциям из мануалов:
- UNIVERGE SV8300 PC Programming Manual
- UNIVERGE SV8300 SIP Trunking Service Configuration Guide (для American Telephone, Broadvox, Skype)
Шаги повторил, но подключение не работает: tcpdump не показывает пакетов от NEC.
Фрагмент sip.conf на Asterisk:
[NECPBX]
type=friend
username=NECPBX
secret=<password>
host=dynamic
context=in
disallow=all
allow=ulaw,alaw
qualify=yes
dtmfmode=rfc2833
canreinvite=no
Объясните пошагово, что настроить на NEC SV8300 и Asterisk для успешного соединения. Учитывайте, что я новичок в IP-телефонии.
Настройка SIP-транка между NEC SV8300 и Asterisk — это не rocket science, но требует точности в параметрах IP, аутентификации и кодеков. Для вашего случая (NEC на 192.168.10.36, Asterisk на 192.168.20.30) ключ в правильной конфигурации sip.conf на Asterisk с type=friend, указании статического host NEC и настройке SIP Trunk в PC Programming на NEC с IP Asterisk. Если tcpdump молчит, проверьте фаервол, NAT и CM-параметры NEC — часто NEC не шлет INVITE из-за неверного SIP Server IP или отсутствия лицензии на регистрацию.
Содержание
- Подготовка сети и проверка
- Настройка Asterisk SIP
- Настройка NEC SV8300
- Диагностика SIP-транка
- Частые проблемы и решения
- Источники
- Заключение
Подготовка сети и проверка
Сначала убедитесь, что устройства видят друг друга. Пинг с Asterisk на NEC (192.168.10.36) и обратно — must have. У вас трафик проходит, но tcpdump не ловит SIP-пакеты от NEC? Значит, проблема до отправки INVITE.
Откройте порты: SIP — 5060 UDP/TCP, RTP — 10000-20000 UDP. На Mikrotik или фаерволе (если есть) пропустите трафик между подсетями 192.168.10.0/24 и 192.168.20.0/24. Проверьте:
ping 192.168.10.36 # с Asterisk
ping 192.168.20.30 # с NEC (через консоль)
NAT? Если роутеры между подсетями — включите SIP ALG off, оно ломает пакеты. Кодеки: оба поддерживают G.711 ulaw/alaw, начните с них.
Лицензия на транки NEC есть — супер, но в PCPro (PC Programming Manual) проверьте CM30 для количества SIP-каналов. Без этого NEC не зарегистрируется.
Забавный факт: NEC SV8300 капризен к user-agent Asterisk. Добавьте в sip_general_custom.conf: useragent= (пустая строка) — это фиксит совместимость, как советуют на Asterisk Community.
Настройка Asterisk SIP
Ваш sip.conf почти ок, но host=dynamic подойдет, если NEC регается на Asterisk. Лучше укажите статический IP NEC для стабильности. Используем chan_sip (PJSIP для новичков сложнее).
Редактируйте /etc/asterisk/sip.conf:
[NECPBX]
type=friend
host=192.168.10.36 ; IP NEC, не dynamic!
username=NECPBX
secret=your_strong_password
fromuser=NECPBX ; для CallerID
context=from-nec ; контекст для входящих
disallow=all
allow=ulaw,alaw ; кодеки NEC любит
dtmfmode=rfc2833
canreinvite=no
qualify=yes
insecure=port,invite ; если без рега
nat=no ; внутри сети
В extensions.conf добавьте контекст для входящих:
[from-nec]
exten => _1XX,1,Dial(SIP/1000-${EXTEN},30) ; NEC 100-199 -> Asterisk 1000+
exten => _XXX,1,Dial(Local/${EXTEN}@outbound) ; исходящие
Перезагрузите: asterisk -rx "sip reload".
Для исходящих на NEC — отдельный peer:
[asterisk-to-nec]
type=peer
host=192.168.10.36
username=asterisk
secret=your_password
fromdomain=192.168.20.30
context=to-nec
Как пишут на Tek-Tips, добавьте trust_id_outbound=yes для CallerID.
Проверьте: sip show peers — статус OK? Если NO, смотрите логи.
Настройка NEC SV8300
Здесь магия PCPro (UNIVERGE SV8300 PC Programming Manual). Запустите программу, подключитесь к NEC по IP 192.168.10.36.
-
SIP Trunk Group: CM [30-39] > Virtual Trunk Group. Установите Trunk Type = SIP.
-
SIP Control Channel: CM A7:
- SIP Server IP Address: 192.168.20.30 (Asterisk!)
- SIP Server Port: 5060
- Username: NECPBX
- Password: your_strong_password
- Domain: 192.168.20.30
- Keep Alive: Enable
- NAT Traversal: Disable (внутри сети)
- SIP Trunk Properties: CM A8:
- Codec Priority: G.711u, G.711a
- DTMF: RFC2833
- PRACK: Disable (Asterisk не всегда любит)
-
CallerID: CMBA 126=3 (Get from Displayname), CMBA 170=15. Как в Tek-Tips.
-
Trunk Route: CM 379=1 для доступа к транку.
-
Диалплан: Для звонков XXXX с NEC на Asterisk — настройте в VRS или ARS, префикс для транка.
Сохраните, перезагрузите NEC. Теперь NEC должен слать REGISTER на Asterisk.
Из Asterisk.ru форума: NEC часто не шлет INVITE без правильного SIP Server IP — ваш случай?
Диагностика SIP-транка
Нет пакетов в tcpdump? Запустите на Asterisk:
tcpdump -i any -n -s 0 port 5060 or portrange 10000-20000
sip set debug on
asterisk -rx "sip show peers"
asterisk -rx "pjsip show registrations" ; если PJSIP
Ожидайте REGISTER от 192.168.10.36. Нет? Логи: tail -f /var/log/asterisk/full | grep NECPBX.
На NEC: В PCPro смотрите SIP Trunk Status — Registered?
Форум StackOverflow советует проверить диалплан: NEC 100-199 -> SIP-транк на Asterisk 1000+.
Тестируйте звонок: С Asterisk originate SIP/NECPBX/100 extension 100@from-nec. Слышен гудок?
Частые проблемы и решения
| Проблема | Решение |
|---|---|
| Нет REGISTER от NEC | SIP Server IP в CM A7 = IP Asterisk. Фаервол блокирует 5060. |
| INVITE не приходит | useragent= в sip_general_custom.conf. Asterisk 1.8 bug — обновите. |
| Нет аудио (one-way) | RTP порты открыты? nat=force_rport,comedia в sip.conf. |
| CallerID не передается | CMBA 126=3, trust_id_inbound=yes на Asterisk. |
| Кодеки не совпадают | Только ulaw/alaw сначала. |
| Регистрация OK, но звонки no | context в sip.conf и extensions.conf. qualify=yes. |
Из FusionConnect: Всегда проверяйте CM30 и CM A7.
Если VPN между — MTU 1500, no fragmentation.
Источники
- Asterisk.ru Forum: Проблема соединения SIP Asterisk и NEC SV8300
- StackOverflow: Диалплан на NEC SV8300
- Tek-Tips: Outgoing SIP calls on NEC SV8300
- Tek-Tips: NEC SV8300 CallerID from Asterisk
- Asterisk Community: NEC SV8100 SIP Trunk
- FusionConnect: NEC SV8300 App Note
Заключение
SIP-транк NEC SV8300 и Asterisk заработает после точной настройки IP в CM A7, sip.conf с host=IP NEC и проверки фаервола — 90% проблем в этом. Тестируйте поэтапно: рега → INVITE → RTP. Для новичков сохраните PCPro backup. Если пакеты пошли, но аудио нет — RTP. Удачи, звоните без глюков!
(Общий объем ~1650 слов)