ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Нет звука за NATом

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Нет звука за NATом

Сообщение 400k4a » 24 апр 2019, 21:50

Всем бобра!
Настроил простую конфигурацию, в локальной сети все работает без проблем. Теперь хочу настроить работу за NAT. Понимаю, что вопрос с бородой, в Интернете кучу ответов про directmedia=no и nat=force_rport,comedia перерыл, но пока мне это не помогло. Просто описываю, что я сделал и готовлюсь к пинкам. Просьба по голове не бить.

1) Asterisk13 на машине за роутером, на роутере NAT, роутер смотрит в Интернет, с dyndns.
2) на роутере пробросил порт sip и 10000-20000
3) в sip.conf задал:
externhost=<my_dyndns_name>:<my_port>
externrefresh=30
...
qualify=yes
directmedia=no
canreinvite=no
nat=force_rport,comedia
4) настроил echo-номер для тестов (локально он работает, опять же, без проблем)

Итак, сервер смотрит в интернет через NAT, абоненты - телефоны с CSipSimple. Проверяю, что на телефонах работает SIPNET, то есть сотовый оператор не блокирует.
Телефон сервер видит, на сервере регистрируется. Звоню на эхо-номер, звонок идет, но звука нет.
Смотрю:
Код: выделить все
CLI> sip show peers
Name/username             Host                                    Dyn Forcerport Comedia    ACL Port     Status      Description
100/100                   217.66.156.160                           D  Yes        Yes            16705    OK (1767 ms)
101/101                   (Unspecified)                            D  Yes        Yes            0        UNKNOWN
102                       (Unspecified)                            D  Yes        Yes            0        UNKNOWN


Телефон виден под своим внешним ip (я проверил, что это внешний ip).

Включил дебаг, вижу, что sip пакеты бегут, а rtp - нет, только несколько:
Sent Comfort Noise RTP packet to 217.66.156.160:9969 (type 02, seq 006061, ts 000000, len 000001)

Записал дамп трафика при звонке на эхо, вот так оно работает в локальной сети:
local-good.png
local-good.png (36.39 KIB) Просмотров: 8294


А вот так через NAT:
nat-bad.png
nat-bad.png (19.88 KIB) Просмотров: 8294


Invite вблизи:
nat-bad-invite.png

Серым закрашено имя моего сервера (порт 5947 вместо 5060, но это не влияет, в конфигах поправил везде). Зеленый - внешний адрес телефона (верный), красным - какой-то левый внутренний адрес оператора. Но по второй картинке видно, что RTP пакет с Comfort Noise (CN) идет куда надо - на 217.66.156.160. Правда, я его все равно не слышу, как и приветствия echo-номера.

На телефоне в CSipSimple включал STUN. Менял транспорт tcp/udp в настройках и там, и там. Роутер номера портов при пробросе не меняет. На всякий случай попробовал сделать "открытый сервер", то есть проброс не указанных, а всех портов на заданную машину. Ничего не поменялось.
400k4a
 
Сообщений: 2
Зарегистрирован: 24 апр 2019, 20:34

Re: Нет звука за NATом

Сообщение BorisTheBlade » 25 апр 2019, 10:53

насколько я вижу cигнальный трафик пришел по TCP, RTP ходит по UDP. Видимо проброшены только tcp порты ?
BorisTheBlade
 
Сообщений: 167
Зарегистрирован: 14 фев 2011, 15:24

Re: Нет звука за NATом

Сообщение Zavr2008 » 25 апр 2019, 14:07

роутер смотрит в Интернет, с dyndns


Жалко 100р за нормальный белый IP?
Дело в том, что externip у Вас может меняться и Астер об этом даже не узнает если его не пнуть.
Есть правда в последних версиях поддержка STUN - её и можно включить.
Также если NAT настраиваете, отключайте SIP ALG на маршрутизаторе.
Российские шлюзы E1 Alvis-GW. Модернизация УПАТС с E1, Установка FreePBX, Системы антифрод "в разрыв" потоков E1 PRI / SS#7 ISUP.
Аватар пользователя
Zavr2008
 
Сообщений: 2161
Зарегистрирован: 27 янв 2011, 01:35

Re: Нет звука за NATом

Сообщение 400k4a » 25 апр 2019, 14:54

BorisTheBlade писал(а):насколько я вижу cигнальный трафик пришел по TCP, RTP ходит по UDP. Видимо проброшены только tcp порты ?

Пробросил и tcp, и udp.
Почему rtp по udp - для меня пока загадка. Стоит transport=tcp и tcpenable=yes. На udp менять пробовал (на сервере и телефонах).

Zavr2008 писал(а): Дело в том, что externip у Вас может меняться и Астер об этом даже не узнает если его не пнуть.

Я потому и использую externhost вместо externaddr. Насколько я понял, externrefresh=30 и определяет время между пинками. Пробовал и текущий ip задавать для проверки - так же.

Zavr2008 писал(а):Также если NAT настраиваете, отключайте SIP ALG на маршрутизаторе.

Проверил, роутер примитивный, не умеет SIP ALG.
400k4a
 
Сообщений: 2
Зарегистрирован: 24 апр 2019, 20:34

Re: Нет звука за NATом

Сообщение BorisTheBlade » 25 апр 2019, 15:50

Почему rtp по udp - для меня пока загадка.
[Показать] Спойлер:
ну наверное потому-что :)
transport отвечает за сигналинг SIP, RTP насколько я знаю только по UDP ходит
BorisTheBlade
 
Сообщений: 167
Зарегистрирован: 14 фев 2011, 15:24

Re: Нет звука за NATом

Сообщение voipmaster.ru » 15 май 2019, 01:26

В sip.conf, в секции general, нужно прописать:

[general]
externip=xx.xx.xx.xx ;Где xx.xx.xx.xx - внешний ip
localnet=192.168.0.1/255.255.0.0
nat=force_rport,comedia
bindport=5060
allowguest=no

И на роутере пробросить порты 5060 и 10000-20000 на внутренний ip сервера
или добавить сервер в DMZ.
voipmaster.ru
 
Сообщений: 14
Зарегистрирован: 14 май 2019, 19:38

Re: Нет звука за NATом

Сообщение ded » 15 май 2019, 10:54

400k4a писал(а):
Zavr2008 писал(а): Дело в том, что externip у Вас может меняться и Астер об этом даже не узнает если его не пнуть.

Я потому и использую externhost вместо externaddr.

voipmaster.ru писал(а):В sip.conf, в секции general, нужно прописать:

[general]
externip=xx.xx.xx.xx ;Где xx.xx.xx.xx - внешний ip
voipmaster.ru, зачем советуете использовать externip, если ТС ясно изложил, что он использует параметр externhost?
ded
 
Сообщений: 15803
Зарегистрирован: 26 авг 2010, 19:00

Re: Нет звука за NATом

Сообщение voipmaster.ru » 15 май 2019, 22:51

ded, localnet тоже может отличаться) localnet=192.168.0.1/255.255.0.0
поэтому я написал рекомендацию, а ТС адаптирует ее к своим условиям.
voipmaster.ru
 
Сообщений: 14
Зарегистрирован: 14 май 2019, 19:38

Re: Нет звука за NATом

Сообщение ded » 16 май 2019, 10:55

Какую рекомендацию?
Дело в том, что externip у Вас может меняться и Астер об этом даже не узнает если его не пнуть.

У ТС externip меняется, потому что динамический, для этого придуман параметр externhost + dyndns.
ded
 
Сообщений: 15803
Зарегистрирован: 26 авг 2010, 19:00

Re: Нет звука за NATом

Сообщение Repz » 16 май 2019, 12:04

400k4a писал(а):Почему rtp по udp - для меня пока загадка.

может сначала книжек почитать?
Repz
 
Сообщений: 169
Зарегистрирован: 04 мар 2015, 12:35

След.

Вернуться в Вопросы новичков

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH