Страница 1 из 1

WebRTC и проброс портов

Добавлено: 03 май 2024, 13:23
kawaider
Добрый день!
Настраиваю WebRTC. В локальной сети все работает корректно (звонки проходят и звук есть). При пробросе на астер портов wss и RTP для внешнего абонента тоже все работает корректно (и астер и абонент за натами). Если порты RTP на астер не пробрасывать (проброшен только wss) звука нет.

Вопрос. Это так и надо? Или я что то типа STUN и ICE не докрутил?
Какие правильные действия когда и астериск и абоненты за натами?

Re: WebRTC и проброс портов

Добавлено: 03 май 2024, 14:13
ded
Формулировка (и астериск и абоненты за натами) некорректна. Точность - признак мастерства.
Надо стремиться к идеальной модели. Идеальная модель - все в одной сети, или все на публичных адресах.
Первая апроксимация к идеальной модели (в случае тотальных НАТов): все соединения - упаковать в VPN.
http://www.asterisk.ru/news/183
Вторая апроксимация к идеальной модели - Астериск на публичном адресе, клиенты в разных частях света, у разных ISP, за НАТ. Доступ к портам Астериск тщательно регулируется и контролируется.

Ваш вариант
Asterisk = = = { NAT/firewall-1 } - - - WAN - - - { NAT/firewall-2 } = = = WebRTC phone
самый неудачный. 4 видимые точки возможной блокировки трафика, не считая каких-то скрытых точек на стороне провайдеров интернет. Напомню, что кроме правил НАТа, ещё и возможные правила Firewall.
tcpdump на всех участках поможет найти проблемное место.

Re: WebRTC и проброс портов

Добавлено: 03 май 2024, 14:19
kawaider
Ваши варианты безусловно правильнее моего и в остальных случаях и применяется сеть связанная впнами.

Да, по этому вопросу, у меня именно такая конфигурация.
Asterisk = = = { NAT/firewall-1 } - - - WAN - - - { NAT/firewall-2 } = = = WebRTC phone

Так вот, обязателен ли проброс портов на астер, или есть какой то механизм обхода, чтобы не пользоваться пробросом и я о нем просто не знаю? Повторю еще раз, в случае проброса проблем в работе нет, все работает как надо.

Re: WebRTC и проброс портов

Добавлено: 03 май 2024, 14:43
ded
kawaider писал(а):обязателен ли проброс портов на астер, или есть какой то механизм обхода, чтобы не пользоваться пробросом и я о нем просто не знаю? Повторю еще раз, в случае проброса проблем в работе нет, все работает как надо.
Да, обязателен.
http://www.asterisk.ru/knowledgebase/As ... +solutions
Порты для медиа для каждой сессии RTP выбираются производльно, для Астериска этот диапазон задаётся в rtp.conf
Обычно 10000-20000
Теоретически. на устройстве { NAT/firewall-1 } за динамической трансляцией этих портов может следить SIP ALG (SIP helper), однако на практике эти опции чаще вредят, чем помогают.
Механизмы STUN и ICE - это для клиентских НАТов. Если Астериск за НАТом, но публичный адрес на устройстве { NAT/firewall-1 } фиксированный, то установка параметра externip= в конфиге sip.conf помогает, но по связанности сигнализации.

Re: WebRTC и проброс портов

Добавлено: 03 май 2024, 14:45
kawaider
Огромное вам спасибо! Вопрос закрыт :D