Talk:Jingle/test
From JaWiki (Jabber/XMPP wiki)
STD out psi media 0.14 (FreeBSD) <> psi media 0.14 (Ubuntu)
Без STUN, на одной стороне NAT
send clock is master state changed sendbin: apprtpsink4 audioencbin: rtpspeexpay5 speexenc5 capsfilter9 audioresample10 audioconvert10 volume5 %using speexdsp Readying AudioIn:[oss,/dev/dsp0.0], refs=1 codec=speex rate=16000,width=16,channels=1 changing state... send clock is master state changed sendbin: apprtpsink5 audioencbin: rtpspeexpay6 speexenc6 capsfilter11 audioresample12 audioconvert12 volume6 queue5 bin5: capsfilter10 audioresample11 audioconvert11 osssrc15 tee5 speexdsp5 rtppay caps audio: [application/x-rtp, media=(string)audio, clock-rate=(int)16000, encoding-name=(string)SPEEX, encoding-params=(string)1, payload=(int)110, ssrc=(uint)2180135228, clock-base=(uint)3949246459, seqnum-base=(uint)16483] rtp_started there are audio payload types types=1 resolver finished starting ice for audio starting transport 192.168.5.11:8010 for component 1 starting transport 192.168.5.11:8011 for component 2 lt_started lt_started ice_started after_ice_started local candidate ready flushing local candidates incoming request: [transport-info] audio candidates=4 adding 4 remote candidates 4 pairs 1, 192.168.5.11:8010 -> 79.104.207.182:8010 2, 192.168.5.11:8011 -> 79.104.207.182:8011 1, 192.168.5.11:8010 -> 79.104.207.182:8010 2, 192.168.5.11:8011 -> 79.104.207.182:8011 4 after pruning connectivity check from 192.168.5.11:8010 to 79.104.207.182:8010 connectivity check from 192.168.5.11:8011 to 79.104.207.182:8011 connectivity check from 192.168.5.11:8010 to 79.104.207.182:8010 connectivity check from 192.168.5.11:8011 to 79.104.207.182:8011 received validated response check success received validated response check success received validated response check success component 1 already active, not signalling connectivity check from 192.168.5.11:8011 to 79.104.207.182:8011 received validated response check success component 2 already active, not signalling audio: average packet size=82, kbps=41 incoming request: [session-terminate] cleaning up... Releasing AudioIn:[oss,/dev/dsp0.0], refs=0 cleaning done.
Вторая сторона
incoming request: [transport-info] audio candidates=2 adding 2 remote candidates 4 pairs 1, 79.104.207.182:8010 -> 192.168.5.11:8010 2, 79.104.207.182:8011 -> 192.168.5.11:8011 1, 79.104.207.182:8010 -> 192.168.5.11:8010 2, 79.104.207.182:8011 -> 192.168.5.11:8011 4 after pruning connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011 connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011 using speexdsp Readying AudioIn:[alsa,default], refs=1 codec=speex rate=16000,width=16,channels=1 received validated request or indication received validated request or indication received validated request or indication received validated request or indication changing state... connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011 connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011 received validated request or indication connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011 connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011 connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011 connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011 error/timeout while setting send pipeline to PLAYING cleaning up... Releasing AudioIn:[alsa,default], refs=0 cleaning done. cleaning up... cleaning done. connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011 connectivity check from 79.104.207.182:8010 to 192.168.5.11:8010 connectivity check from 79.104.207.182:8011 to 192.168.5.11:8011
STUN
Все то же самое, но со STUN.
На стороне клиента с NAT прописан stun.iptel.org
Он рабочий. Проверил его
stun_client stun.xten.com STUN client version 0.96 Primary: Indepndent Mapping, Port Dependent Filter, preserves ports, no hairpin Return value is 0x000017
Но все равно соединение не удается установить. Видно что nat пробрасывает пакеты, но почему-то при этом не подменяет своим адресом (?)
tcpdump -n -i re0 "udp and (src 79.104.207.182 or dst 79.104.207.182)"
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on re0, link-type EN10MB (Ethernet), capture size 96 bytes 13:46:56.043772 IP 192.168.5.11.8010 > 79.104.207.182.8010: UDP, length 92 13:46:56.043997 IP 192.168.5.11.8011 > 79.104.207.182.8011: UDP, length 92 13:46:56.044221 IP 192.168.5.11.8010 > 79.104.207.182.8010: UDP, length 92 13:46:56.044429 IP 192.168.5.11.8010 > 79.104.207.182.8010: UDP, length 92 13:46:56.044640 IP 192.168.5.11.8010 > 79.104.207.182.8010: UDP, length 92 13:46:56.044837 IP 192.168.5.11.8011 > 79.104.207.182.8011: UDP, length 92 13:46:56.045039 IP 192.168.5.11.8011 > 79.104.207.182.8011: UDP, length 92 13:46:56.045254 IP 192.168.5.11.8011 > 79.104.207.182.8011: UDP, length 92 13:46:56.115508 IP 79.104.207.182.8011 > 192.168.5.11.8011: UDP, length 64 13:46:56.116626 IP 79.104.207.182.8011 > 192.168.5.11.8011: UDP, length 64 13:46:56.117875 IP 79.104.207.182.8011 > 192.168.5.11.8011: UDP, length 64 13:46:56.118992 IP 79.104.207.182.8011 > 192.168.5.11.8011: UDP, length 64 13:46:56.120242 IP 79.104.207.182.8010 > 192.168.5.11.8010: UDP, length 64 13:46:56.121741 IP 79.104.207.182.8010 > 192.168.5.11.8010: UDP, length 64 13:46:56.122868 IP 79.104.207.182.8010 > 192.168.5.11.8010: UDP, length 64 13:46:56.124113 IP 79.104.207.182.8010 > 192.168.5.11.8010: UDP, length 64 13:46:56.523891 IP 79.104.207.182.8010 > 192.168.5.11.8010: UDP, length 88 13:46:56.524301 IP 192.168.5.11.8010 > 79.104.207.182.8010: UDP, length 64 13:46:56.525635 IP 79.104.207.182.8010 > 192.168.5.11.8010: UDP, length 88 13:46:56.525872 IP 192.168.5.11.8010 > 79.104.207.182.8010: UDP, length 64 13:46:56.528900 IP 79.104.207.182.8011 > 192.168.5.11.8011: UDP, length 88 13:46:56.529523 IP 192.168.5.11.8011 > 79.104.207.182.8011: UDP, length 64 13:46:56.530504 IP 79.104.207.182.8011 > 192.168.5.11.8011: UDP, length 88
Два публичных адреса
tcpdump
tcpdump -n -i re0 "udp and (src 79.104.207.182 or dst 79.104.207.182)"
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on re0, link-type EN10MB (Ethernet), capture size 96 bytes 14:08:39.101659 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:08:39.103168 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:08:39.104579 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:08:39.106651 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:08:39.139657 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 92 14:08:39.139901 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 92 14:08:39.140115 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 92 14:08:39.140340 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 92 14:08:39.215642 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 64 14:08:39.216875 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 64 14:08:39.217895 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 64 14:08:39.219112 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 64 14:08:39.605483 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:08:39.605877 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 64 14:08:39.606958 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:08:39.607698 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 64 14:08:39.608949 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:08:39.609203 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 64 14:08:39.610389 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:08:39.610786 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 64
tcpdump с другой стороны
14:03:31.431464 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:03:31.431476 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:03:31.431478 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:03:31.472200 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 92 14:03:31.472552 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 64 14:03:31.473153 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 92 14:03:31.473312 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 64 14:03:31.473951 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 92 14:03:31.474095 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 64 14:03:31.474873 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 92 14:03:31.475014 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 64 14:03:31.475876 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 92 14:03:31.476024 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 64 14:03:31.476688 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 92 14:03:31.477581 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 92 14:03:31.478567 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 92 14:03:31.478596 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 64 14:03:31.478715 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 64 14:03:31.478853 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 64 14:03:31.505866 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 64 14:03:31.507055 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 64 14:03:31.508063 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 64 14:03:31.883271 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:03:31.886012 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:03:31.886094 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:03:31.886199 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:03:31.886300 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:03:31.954035 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 64 14:03:31.956940 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 64 14:03:31.959666 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 64 14:03:31.960389 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 64 14:03:31.961881 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 64 14:05:51.342393 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:05:51.344472 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:05:51.344651 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:05:51.344796 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:05:51.447041 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 92 14:05:51.447421 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 64 14:05:51.448080 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 92 14:05:51.448733 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 92 14:05:51.449744 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 64 14:05:51.449763 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 92 14:05:51.449922 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 64 14:05:51.450055 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 64 14:05:51.842901 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:05:51.844450 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:05:51.844652 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:05:51.844798 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88 14:05:51.913829 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 64 14:05:51.915028 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 64 14:05:51.917490 IP 80.78.241.19.8010 > 79.104.207.182.8010: UDP, length 64 14:05:51.919246 IP 80.78.241.19.8011 > 79.104.207.182.8011: UDP, length 64 14:07:50.515056 IP 79.104.207.182.8010 > 80.78.241.19.8010: UDP, length 88 14:07:50.515261 IP 79.104.207.182.8011 > 80.78.241.19.8011: UDP, length 88
XML-log
<iq type="set" to="b108@jabber.ru/на хате" id="aca1a"> <jingle xmlns="urn:xmpp:jingle:1" initiator="lke@agava.com/Датацентр Коровинский (Агава-6)" action="session-initiate" sid="uBrWEqO3daF9ztOr"> <content creator="initiator" name="A" senders="both"> <description xmlns="urn:xmpp:jingle:apps:rtp:1" media="audio"> <payload-type id="110" name="SPEEX" clockrate="16000"/> </description> <transport xmlns="urn:xmpp:jingle:transports:ice-udp:1" pwd="FJeKzFYxO03bEvFqkEmJNP" ufrag="Ctgf"/> </content> </jingle> </iq> <iq from="b108@jabber.ru/на хате" type="result" xml:lang="ru-RU" to="lke@agava.com/Датацентр Коровинский (Агава-6)" id="aca1a"/> <iq type="set" to="b108@jabber.ru/на хате" id="aca2a"> <jingle xmlns="urn:xmpp:jingle:1" action="transport-info" sid="uBrWEqO3daF9ztOr"> <content creator="initiator" name="A"> <transport xmlns="urn:xmpp:jingle:transports:ice-udp:1" pwd="FJeKzFYxO03bEvFqkEmJNP" ufrag="Ctgf"> <candidate generation="0" network="0" port="8010" protocol="udp" component="1" foundation="0" ip="80.78.241.19" priority="2130706431" type="host" id="1G4PEmP4sQ"/> <candidate generation="0" network="0" port="8011" protocol="udp" component="2" foundation="0" ip="80.78.241.19" priority="2130706430" type="host" id="8Jk2wX3uGC"/> </transport> </content> </jingle> </iq> <iq from="b108@jabber.ru/на хате" type="set" xml:lang="ru-RU" to="lke@agava.com/Датацентр Коровинский (Агава-6)" id="ab28a"> <jingle xmlns="urn:xmpp:jingle:1" action="transport-info" sid="uBrWEqO3daF9ztOr"> <content creator="initiator" name="A"> <transport xmlns="urn:xmpp:jingle:transports:ice-udp:1" pwd="EtO0MV4TCULVTlOD8Dxg5A" ufrag="hA84"> <candidate generation="0" network="0" port="8010" protocol="udp" component="1" foundation="0" ip="79.104.207.182" priority="2130706431" type="host" id="wE0sLOH2ys"/> <candidate generation="0" network="0" port="8011" protocol="udp" component="2" foundation="0" ip="79.104.207.182" priority="2130706430" type="host" id="Ng0CknqjhO"/> <candidate generation="0" network="0" port="8010" protocol="udp" component="1" foundation="0s" rel-addr="79.104.207.182" ip="79.104.207.182" priority="1694498815" type="srflx" id="lxSAoChq6e" rel-port="8010"/> <candidate generation="0" network="0" port="8011" protocol="udp" component="2" foundation="0s" rel-addr="79.104.207.182" ip="79.104.207.182" priority="1694498814" type="srflx" id="cZsWzM6W4v" rel-port="8011"/> </transport> </content> </jingle> </iq> <iq type="result" to="b108@jabber.ru/на хате" id="ab28a"/> <iq from="b108@jabber.ru/на хате" type="result" xml:lang="ru-RU" to="lke@agava.com/Датацентр Коровинский (Агава-6)" id="aca2a"/> <iq from="b108@jabber.ru/на хате" type="set" xml:lang="ru-RU" to="lke@agava.com/Датацентр Коровинский (Агава-6)" id="ab29a"> <jingle xmlns="urn:xmpp:jingle:1" action="session-terminate" sid="uBrWEqO3daF9ztOr"> <reason> <gone/> </reason> </jingle> </iq> <iq type="result" to="b108@jabber.ru/на хате" id="ab29a"/>
stdout psi
codec=speex rate=16000,width=16,channels=1 changing state... send clock is master state changed sendbin: apprtpsink14 audioencbin: rtpspeexpay15 speexenc15 capsfilter29 audioresample30 audioconvert30 volume15 queue14 bin14: capsfilter28 audioresample29 audioconvert29 osssrc33 tee14 speexdsp14 rtppay caps audio: [application/x-rtp, media=(string)audio, clock-rate=(int)16000, encoding-name=(string)SPEEX, encoding-params=(string)1, payload=(int)110, ssrc=(uint)39951517, clock-base=(uint)912861304, seqnum-base=(uint)56030] rtp_started there are audio payload types types=1 resolver finished starting ice for audio starting transport 80.78.241.19:8010 for component 1 starting transport 80.78.241.19:8011 for component 2 lt_started lt_started ice_started after_ice_started local candidate ready audio: average packet size=82, kbps=41 flushing local candidates received validated request or indication user [Ctgf:hA84] is wrong. it should be [Ctgf:]. skipping received validated request or indication user [Ctgf:hA84] is wrong. it should be [Ctgf:]. skipping received validated request or indication user [Ctgf:hA84] is wrong. it should be [Ctgf:]. skipping received validated request or indication user [Ctgf:hA84] is wrong. it should be [Ctgf:]. skipping incoming request: [transport-info] audio candidates=4 adding 4 remote candidates 4 pairs 1, 80.78.241.19:8010 -> 79.104.207.182:8010 2, 80.78.241.19:8011 -> 79.104.207.182:8011 1, 80.78.241.19:8010 -> 79.104.207.182:8010 2, 80.78.241.19:8011 -> 79.104.207.182:8011 4 after pruning connectivity check from 80.78.241.19:8010 to 79.104.207.182:8010 connectivity check from 80.78.241.19:8011 to 79.104.207.182:8011 connectivity check from 80.78.241.19:8010 to 79.104.207.182:8010 connectivity check from 80.78.241.19:8011 to 79.104.207.182:8011 received validated response check success received validated response check success component 1 already active, not signalling received validated response check success received validated response check success component 2 already active, not signalling received validated request or indication received validated request or indication received validated request or indication received validated request or indication incoming request: [session-terminate] cleaning up... Releasing AudioIn:[oss,/dev/dsp0.0], refs=0 cleaning done.