LINUX.ORG.RU
ФорумAdmin

Asterisk. Как много в этом звуке. (вернее звука как раз и нету)

 ,


0

1

Доброго дня всем!

Прошу помощи… авторизация в астере есть, звука при звонках нет.

Исходные данные: Сервер в дата-центре. На нем множество виртуалок, одна из них в роли шлюза, на другой развернут астер. До меня уже кто-то разворачивал астер, и открывал и пробрасывал все необходимые, но стандартные порты. Когда я развернул свежую виртуалку, назначил ей тот же айпишник, что был у старой, и довольно быстро, все настроил, звонки идут, сначала не было слышно, потому что отсутствовал вообще файл extensions.conf, добавил файл, прописал в нем порты, звук пошел. уточню, звонки совершаются исключительно внутри сети, никаких транков наружу и т.д. Абоненты разумеется находятся за nat и так и будет. Но пока было всё настроено на стандартный порт 5060, логи за сутки до гигабайта доходили. Решил сменить порт SIP 5060 на другой, подошел творчески. придумал порт, попросил провайдера на своем оборудовании его открыть, и был уверен, что пробросив этот самый порт, этого будет достаточно для совершения звонков. Не тут-то было… в клиентах, где-то это zoiper, где-то Phonerlite, начали твориться веселые вещи… а именно, авторизация есть, звонок совершить можно, но звука нет, входящего трафика нет, исходящий само собой есть. Перепроверил проброс портов, вроде бы все верно, но ситуация не меняется.

Соответственно прошу помощи у уважаемых форумчан, как эту штуку победить? какие вам надо предоставить логи, списки правил и т.д. и т.п.

Chat-GPT такое впечатление, отвечает строго по методичке, причем не обращая внимания на то что я ему по несколько раз объяснял, что, настроено у меня с помощью PJSIP, на виртуалке с астером файерволл не настроен вовсе и т.д. и т.п.


Ответ на: комментарий от goingUp

Ну могу еще пованговать, что кроме SIP 5060 нужно еще пробрасывать media порты (емнип udp) для собственно звука

goingUp ★★★★★
()
Последнее исправление: goingUp (всего исправлений: 1)
Ответ на: комментарий от goingUp

0 0 DNAT 17 – vmbr0 * 0.0.0.0/0 0.0.0.0/0 multiport dports 10000:20000 to:192.168.10.95

6 4703 DNAT 17 – vmbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:9346 to:192.168.10.95:5060

0 0 DNAT 6 – vmbr0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:9346 to:192.168.10.95:5060

0 0 DNAT 17 – vmbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:9346 to:192.168.10.95:5060

0 0 DNAT 17 – eno1np0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:9346 to:192.168.10.95:5060

0 0 DNAT 17 – vmbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpts:10000:20000 to:192.168.10.95

0 0 MASQUERADE 17 – * vmbr0 0.0.0.0/0 192.168.10.95 udp dpt:5060

0 0 MASQUERADE 6 – * vmbr0 0.0.0.0/0 192.168.10.95 tcp dpt:5060

6 4703 MASQUERADE 17 – * * 0.0.0.0/0 192.168.10.95 udp dpt:5060

0 0 MASQUERADE 17 – * eno1np0 192.168.10.95 0.0.0.0/0 udp spt:5060

0 0 MASQUERADE 17 – * eno1np0 192.168.10.95 0.0.0.0/0 udp spt:5060

44 3280 MASQUERADE 0 – * vmbr0 0.0.0.0/0 0.0.0.0/0

На шлюзе такие правила.

DeZeR
() автор топика

SIP два потока - 5060/udp,tcp - для управления, RTP/udp,tcp - для передачи голоса, видео и прочего.

Посмотри какой у тебя диапазон портов открыт для RTP - учитывай каждый 1 порт для 1 одного разговора, если хочешь, чтобы нужно было 100 разговоров одновременных, открываешь диапазон в 100 портов. Обычно в Asterisk открыты сразу 10.000 портов с 10000 до 20000. Ну это я думаю через перебор. я у себя ставлю не более 50 портов диапазон. Ну вот теперь в firewall нужно открыть порт 5060/udp,tcp, rtp port ranges.

Более подробнее здесь https://community.asterisk.org/t/rtp-port-range-configuration/74189

Как с этим справишся, затем идешь разбираться с NAT. Я обычно каждый extensions добавляю nat = yes.

Nurmukh ★★★
()

По хорошему, это должен быть statefull NAT. То есть роутер осуществляющий NAT должен «заглядывать» в каждый управляющий пакет SIP и динамически открывать порты RTP. Раз у вас нестандартный порт, то он этого не делает и требуется дополнительная настройка на нем.

anonymous
()