То есть вопрос почему 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
| Код: |
| 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
_________________
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
_________________
Занимаямся VoIP c 1999 года.