Список форумов Asterisk Forum Asterisk Forum
The Asterisk Open Source PBX - Russian Community
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ПравилаПравила   ГруппыГруппы   ИзбранноеИзбранное    LinksСсылки   РегистрацияРегистрация 
 RSSRSS   ПрофильПрофиль   Войти и проверить личные сообщения   ВходВход 

Asterisk 11.16.0 + sipml5 WebRTC чудеса

 
Список форумов Asterisk Forum -> Asterisk IP PBX    вывод темы на печать
Предыдущая тема :: Следующая тема  
Автор Сообщение
dimagolov



Зарегистрирован:
21.05.2008
Сообщения: 70
Откуда: Krakow, Poland

Статус: Оффлайн 

СообщениеДобавлено: Чт Окт 29, 2015 00:32    Заголовок сообщения:

Настроил связку Asterisk 11.16.0 и sipml5 по мануалу https://wiki.asterisk.org/wiki/display/AST/WebRTC+tutorial+using+SIPML5 с простейшим конфигом (ниже). Регистрация проходит отлично, звонок на тестовый extension 1000 со странички открытой в FireFox на Ubuntu проходит как и ожидалось, все слышно. Но такой же звонок из FireFox или Chrome под Windows используя те же настройки клиента дают заметную задержку во время ICE запроса и потом на стороне asterisk в RTP debug отсутствует вставка "(via ICE)" а броузеры шлют RTP используя LAN IP сервера 10.0.0.26 вместо внешнего 65.166.XXX.XXX. В итоге NAT не пропускает RTP stream от Asterisk и звука нет на Windows. Как я уже говорил, все то же самое, те же логины, те же настройки, та же сеть за тем же самым NATом но из Ubuntu PC работает нормально, sipml5 шлет RTP на внешний IP 65.166.XXX.XXX и NAT пропускает поток с сервера и слышен звук.

То есть вопрос почему ICE ведет себя по разному под Windows и Ubuntu и потом почему выбирает IP 10.0.0.26 как RTP сервера вместо 65.166.XXX.XXX который используется для SIP/WS?

Спасибо

sip.conf
Код:

    [general]
    context=full
    allowguest=no
    allowoverlap=no
    realm=65.166.XXX.XXX
    udpbindaddr=65.166.XXX.XXX:5060
    tcpenable=no
    tcpbindaddr=0.0.0.0
    transport=udp,ws
    srvlookup=yes
    localnet=10.0.0.26/255.255.255.0
    localnet=10.0.2.27/255.255.255.0
    localnet=199.38.ZZZ.ZZZ/255.255.255.0
    externaddr = 65.166.XXX.XXX
    media_address = 65.166.XXX.XXX

    [basic-options](!)                ; a template
            dtmfmode=rfc2833
            context=full
            type=friend

    [natted-phone](!,basic-options)   ; another template inheriting basic-options
            directmedia=no
            canreinvite=no
            host=dynamic

    [140](natted-phone)
    secret=PASSWORD
    encryption=yes
    avpf=yes
    force_avp=yes
    icesupport=yes
    disallow=all
    allow=ulaw
    dtlsenable=yes
    dtlsverify=fingerprint
    dtlscertfile=/etc/asterisk/keys/self/asterisk.pem
    dtlscafile=/etc/asterisk/keys/self/ca.crt
    dtlssetup=actpass
    nat=force_rport,comedia


Added after 2 minutes:

Лог успешный

Added after 32 seconds:

Лог не успешный

_________________
Ubuntu 14.04 4 3.13.0-65-generic/Asterisk 11.16.0/dahdi 2.10.2/wanpipe 7.0.14
Sangoma A200d/Polycom IP601,501
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
dimagolov



Зарегистрирован:
21.05.2008
Сообщения: 70
Откуда: Krakow, Poland

Статус: Оффлайн 

СообщениеДобавлено: Чт Окт 29, 2015 10:57    Заголовок сообщения:

Протестил с еще одной машины с Ubuntu. Результат тоже негативный. Сделал tcpdump RTP трафика и обнаружил, что sipml5 упорно шлет его на ВСЕ внутренние адреса сервера КРОМЕ того, с которого идет собственно SIP/WS соединение:
Код:
08:52:55.804331 IP 192.168.1.249.34127 > 199.38.ZZZ.ZZZ.10026: UDP, length 124
08:52:55.844627 IP 192.168.1.249.34127 > 10.8.0.1.10026: UDP, length 124
08:52:55.866230 IP 192.168.1.249.38299 > 10.0.0.26.10027: UDP, length 124
08:52:55.892635 IP 192.168.1.249.38299 > 10.0.2.27.10027: UDP, length 124
08:52:55.913931 IP 192.168.1.249.38299 > 199.38.ZZZ.ZZZ.10027: UDP, length 124
08:52:55.954955 IP 192.168.1.249.38299 > 10.8.0.1.10027: UDP, length 124
08:52:55.974327 IP 192.168.1.249.58626 > 10.0.0.26.10026: UDP, length 124
08:52:55.994520 IP 192.168.1.249.58626 > 10.0.2.27.10026: UDP, length 124
08:52:56.017954 IP 192.168.1.249.58626 > 199.38.ZZZ.ZZZ.10026: UDP, length 124
08:52:56.059381 IP 192.168.1.249.41640 > 10.0.0.26.10027: UDP, length 124
08:52:56.079660 IP 192.168.1.249.41640 > 10.0.2.27.10027: UDP, length 124
08:52:56.102846 IP 192.168.1.249.41640 > 199.38.ZZZ.ZZZ.10027: UDP, length 124
08:52:56.141455 IP 192.168.1.249.41640 > 10.8.0.1.10027: UDP, length 124

Теперь даже более интересный вопрос, почему с одной машины все же заработало. Не операционке дело, как показывает практика, а в чем-то другом

Added after 1 hours 56 minutes:

Отфильтровал трафик на порт STUN и выяснил, что там, где все работает стабильно приходят ответы на закпросы к STUN серверу, вне зависимости какое подключение я использую. испробовал 3 разных из них одно имеет точно 2 NAT, одно точно один, а еще одно или 2 или 1, не суть важно:
Код:
10:34:32.146137 IP 192.168.1.222.44513 > 173.194.71.127.19302: UDP, length 28
10:34:32.166342 IP 192.168.1.222.52675 > 173.194.71.127.19302: UDP, length 28
10:34:32.215113 IP 173.194.71.127.19302 > 192.168.1.222.44513: UDP, length 32
10:34:32.215875 IP 173.194.71.127.19302 > 192.168.1.222.52675: UDP, length 32
10:42:47.477370 IP 192.168.8.102.44362 > 173.194.71.127.19302: UDP, length 28
10:42:47.497462 IP 192.168.8.102.43114 > 173.194.71.127.19302: UDP, length 28
10:42:47.532340 IP 173.194.71.127.19302 > 192.168.8.102.44362: UDP, length 32
10:42:47.542263 IP 173.194.71.127.19302 > 192.168.8.102.43114: UDP, length 32
10:44:03.698886 IP 192.168.1.222.37586 > 173.194.71.127.19302: UDP, length 28
10:44:03.719742 IP 192.168.1.222.55120 > 173.194.71.127.19302: UDP, length 28
10:44:03.742336 IP 173.194.71.127.19302 > 192.168.1.222.37586: UDP, length 32
10:44:03.763781 IP 173.194.71.127.19302 > 192.168.1.222.55120: UDP, length 32
10:46:26.784209 IP 192.168.43.120.58433 > 173.194.71.127.19302: UDP, length 28
10:46:26.804144 IP 192.168.43.120.42982 > 173.194.71.127.19302: UDP, length 28
10:46:26.864704 IP 173.194.71.127.19302 > 192.168.43.120.58433: UDP, length 32
10:46:26.893822 IP 173.194.71.127.19302 > 192.168.43.120.42982: UDP, length 32


Там, где имеем проблемы, как и ожидалось ответы от STUN сервера тупо не приходят и в результате клиент пытается отправить RTP по всем возможным адресам, но выбирает почему-то только не тот IP, с которого работает астер.
В целом и без ICE/STUN должно работать, если бы RTP пакеты пошли куда надо, то есть скорее всего надо править код sipml5.
Но и вопрос где пропадают ответы от STUN сервера не безынтересный, но это свой сервер поднять надо, потому что промониторить траф на роутерах не получится

_________________
Ubuntu 14.04 4 3.13.0-65-generic/Asterisk 11.16.0/dahdi 2.10.2/wanpipe 7.0.14
Sangoma A200d/Polycom IP601,501
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
dimagolov



Зарегистрирован:
21.05.2008
Сообщения: 70
Откуда: Krakow, Poland

Статус: Оффлайн 

СообщениеДобавлено: Пн Ноя 02, 2015 14:16    Заголовок сообщения:

Как промежуточный итог могу сказать, что ситуация улучшилась, когда я опустил один из 5 интерфейсов на сервере и * стал слать меньше IP на клиентов. В итоге нужный IP стал попадать в список тех, на кого отправляются RTP пакеты и голос с * пошел на клиента
_________________
Ubuntu 14.04 4 3.13.0-65-generic/Asterisk 11.16.0/dahdi 2.10.2/wanpipe 7.0.14
Sangoma A200d/Polycom IP601,501
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
sipmarket



Зарегистрирован:
10.02.2011
Сообщения: 27
Откуда: London

Статус: Оффлайн 

СообщениеДобавлено: Пт Авг 26, 2016 16:21    Заголовок сообщения:

Это может быть еще связано к количеством IP адресов прописанном у клиента.
_________________
Занимаямся VoIP c 1999 года.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора Skype Name
Список форумов Asterisk Forum -> Asterisk IP PBX Ответить на тему
Страница 1 из 1

Добавить в Избранное

 
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
You cannot attach files in this forum
You cannot download files in this forum