Сети
NAT, STUN и удалённые SIP-номера

На этой странице
- Три разные проблемы, которые обычно сваливают в одну — что нужно знать?
- Путь первый: пробивание через NAT, которое руководство рекомендует в первую очередь — что нужно знать?
- Путь второй: сопоставление портов, когда его требует политика — что нужно знать?
- STUN и два заголовка, устраняющие одностороннее аудио — что нужно знать?
- Мобильные каналы и неудобные сети — что нужно знать?
- Чек-лист для удалённого внутреннего номера
Три разные проблемы, которые обычно сваливают в одну — что нужно знать?
«Удалённый телефон не работает» — за этим стоит как минимум три разных неисправности, и исправляются они по-разному:
- IP PBX стоит за NAT, и удалённые оконечные устройства не могут её найти.
- Телефон стоит за NAT, и IP PBX не может отправить медиатрафик обратно к нему.
- Оба стоят за NAT, что сочетает первые два случая; именно здесь обычно появляется одностороннее аудио.
Понять, с каким из трёх вы имеете дело, помогает один вопрос: телефон вообще может зарегистрироваться? Если регистрация не проходит, проблема в поиске IP PBX. Если регистрация проходит, а аудио идёт в одну сторону, проблема в трансляции адресов на пути медиатрафика.
Путь первый: пробивание через NAT, которое руководство рекомендует в первую очередь — что нужно знать?
В IP PBX есть служба обхода NAT, описанная как предпочтительный метод. Когда она включена, устройство формирует собственный домен пробивания из кода безопасности и последних шести символов MAC-адреса устройства, на порту 5090. Удалённый телефон регистрируется на это доменное имя вместо публичного IP-адреса.
Отсюда следует две вещи. Во-первых, объекту не нужно публиковать и поддерживать публичный IP для IP PBX, и проброс портов не требуется. Во-вторых, домен привязан к устройству, поэтому замена оборудования меняет адрес — это изменение, которое нужно запланировать, а не неожиданность, которую нужно обнаружить.
Путь второй: сопоставление портов, когда его требует политика — что нужно знать?
Сопоставление портов означает, что маршрутизатор перед IP PBX перенаправляет на неё трафик. Работает ли это, решают три детали:
- IP PBX должна иметь фиксированный IP-адрес на интерфейсе WAN, а не аренду DHCP, иначе правило перенаправления рано или поздно станет указывать в пустоту.
- Нужно пробросить и порт сигнализации SIP, и диапазон RTP. Диапазон RTP по умолчанию — с 10010 по 10266, и каждый разговор занимает два порта: один под RTP и один под RTCP, поэтому четырём одновременным разговорам нужно восемь открытых портов.
- Сопоставление внешних портов с теми же номерами внутри избавляет впоследствии от целого класса проблем. Там, где публичный адрес динамический, в IP PBX есть встроенная поддержка DDNS, и руководство перечисляет службы операторов, которые она умеет обновлять.
Если объект не может опубликовать ни фиксированный адрес, ни домен пробивания, оставьте удалённые телефоны за VPN. У OM20G и OM50G есть встроенный клиент OpenVPN, и руководство прямо оговаривает его назначение: подключение SIP-транков к серверу в частной сети с загрузкой файла сертификата как client.ovpn. Это не VPN общего назначения для удалённого доступа с трубок.
STUN и два заголовка, устраняющие одностороннее аудио — что нужно знать?
STUN включён на платформе по умолчанию, использует порт 3478 и обновляется с интервалом по умолчанию 60 секунд в диапазоне от 30 до 65535 секунд. Он предлагает два варианта поведения: перерегистрация на SIP-сервере либо перерегистрация с обновлением NAT-адреса. Второй и нужно выбирать, когда публичный адрес объекта меняется.
Когда аудио идёт в одну сторону, исправлять обычно приходится не STUN, а два параметра типа адреса на SIP-транке или внутреннем номере:
- Тип адреса в заголовке SIP Contact — LAN или WAN.
- Тип адреса соединения SDP (c=) — LAN или WAN.
Именно эти два параметра решают, какой адрес IP PBX запишет в свою сигнализацию и в описание медиатрафика. Перепутайте их — и вызов будет устанавливаться идеально, не неся аудио в одном направлении. Удалённым внутренним номерам стоит также включить автоматическое определение сервера: оно сохраняет правильное попадание входящих вызовов, когда телефон перемещается.
Мобильные каналы и неудобные сети — что нужно знать?
Там, где IP PBX стоит за сотовым маршрутизатором, платформа добавляет набор из четырёх параметров для работы через NAT 4G — от полной обработки до режима, в котором не обновляются ни адреса SIP, ни адреса SDP. Объектам на сотовом канале следует проверить речь в обоих направлениях до запуска, а также учесть, что 3G- или 4G-модем USB для исходящих вызовов принимает только OM20G; OM50G его явно не поддерживает.
Со стороны локальной сети удалённый доступ — не единственный вопрос безопасности. IP PBX поддерживает аутентификацию порта 802.1X, блокировку входа (по умолчанию шесть неудачных попыток в день с блокировкой на десять минут), белый список доступа до 20 адресов и параметры шифрования сигнализации SIP и голосовой нагрузки. Ничто из этого не заменяет продуманный проект сети, но закрывает очевидные двери.
Чек-лист для удалённого внутреннего номера
- Регистрация: адрес сервера, порт (по умолчанию 5060), имя пользователя, пароль аутентификации. Кроме того, на самом телефоне регистрация должна быть включена, а состояние проверено на странице IP-внутренних номеров IP PBX.
- Входящее аудио: включённое автоматическое определение сервера, типы адресов Contact и SDP выбраны по пути прохождения.
- Исходящее аудио: STUN включён с поведением обновления NAT-адреса, диапазон RTP открыт по всему пути.
- Всё остальное: тот же порядок кодеков и тот же режим DTMF, что и в остальной системе, чтобы внутренние и удалённые вызовы вели себя одинаково.
Проверяйте снаружи здания, в обоих направлениях, с телефоном на том типе сети, который будет использоваться в реальности. Трубка, проверенная на офисном Wi-Fi, ничего не говорит о той же трубке на домашнем подключении.


