Как работает шлюз прикладного уровня (ALG) для SIP?
В интернет-центрах Keenetic реализован шлюз прикладного уровня (ALG) для SIP (SIP Application-Level Gateway).
SIP ALG – это шлюз прикладного уровня, который позволяет голосовому VoIP-трафику (RTP) беспрепятственно проходить через устройство с NAT (Network Address Translation). Если в маршрутизаторе (роутере) присутствует и активирован SIP ALG, то не нужно дополнительно настраивать проброс портов для этого типа трафика.
Как правило, IP-адреса клиентов SIP-телефонии назначаются из диапазона внутренних (локальных) "серых" адресов и их IP-адреса могут пересекаться. В большинстве случаев подключение пользователей к сети осуществляется через устройство с NAT (через роутер). Если это устройство не будет иметь поддержки SIP ALG, то SIP-сервер не сможет различать клиентов.
Регистрация VoIP-устройства на SIP-сервере возможна при использовании одного из способов преодоления NAT: Outbound proxy, STUN, SIP ALG. При этом если на VoIP-телефоне или другом устройстве c SIP-клиентом, расположенном за NAT, настроен один из двух первых методов, то на устройстве обязательно нужно отключить SIP ALG.
Для беспрепятственного прохождения SIP-трафика через устройство с NAT необходимо транслировать адресацию в SIP-пакетах. SIP-пакет анализируется на уровне приложения, и в нем изменяются IP-адреса. Так SIP ALG позволяет реализовать услуги SIP-телефонии в сети с трансляцией адресов NAT без использования вспомогательных внешних устройств.
Пример 1. На пути прохождения SIP-пакетов нет устройства с NAT.
Пример 2. На пути прохождения SIP-пакетов находится устройство с NAT и поддержкой SIP ALG.
В этом случае, устройство с NAT (роутер) подменяет в IP-пакетах IP-адрес источника 192.168.1.33 на свой WAN IP-адрес 210.243.66.215.
Но существуют ограничения, без которых SIP-телефония не будет работать.
Особенность реализации SIP ALG заключается в том, что он работает только на порту 5060. При использовании другого номера порта механизм SIP ALG не будет работать.
Внимание! Начиная с версии NDMS 2.12.C0 была добавлена настройка порта SIP ALG.
Все устройства с NAT должны поддерживать механизм SIP ALG. Если на пути прохождения SIP-пакетов будет находиться устройство с NAT, которое не поддерживает SIP ALG, то в этом случае SIP-телефония не будет работать.