[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Linphone-developers] New linphone/iOS rarely mentions public IP in
Re: [Linphone-developers] New linphone/iOS rarely mentions public IP in SDP
Fri, 2 Nov 2012 14:34:40 +0100
ICE will list in the SDP the local addresses and some server-reflexive addresses obtained via STUN binding requests sent to a STUN server. You can use stun.linphone.org as the STUN server.
However, our ICE implementation is not full in the sense that it does not implement the TURN part to request relay of RTP packets. But if you get responses from the STUN server, you should at least see your public IP address as an ICE candidate in the SDP. You should also see the fields ice-pwd and ice-ufrag in the SDP when ICE is activated. That is not the case in the INVITE message you provided.
It is also recommended to use SIP over TCP or TLS when using ICE since the SIP messages can become quite big and not fit in a UDP datagram anymore.
On 2 November 2012 11:26, Rick van Rein <address@hidden>
I've (been) upgraded to the new Linphone on iOS; thanks, looks cool!
I was happy to find ICE in it, but regardless of using it or not, I
found that SDP mostly mentions only an address behind NAT. I thought
the idea of ICE was to mention as many addresses as possible, internal
as well as external, *and* to mention the external address first to
help non-ICE peers prefer that one.
I have found one STUN server that led to multiple IPv4 addresses,
including the public one; the public one was not listed first in
this case; but most STUN servers yield only an RFC1918 address in
the SDP portion; so I suspect that the STUN code is not fully correct.
I tried stun.ekiga.net (unavailable) sip.iptel.org sip.xten.com and
sip.budgetphone.nl -- the latter was the only one that worked well.
I have attached one failing INVITE request. I am testing against a
proxy that refuses RFC1918-only SDP, because it intends to build
direct connections over the Internet without intermediate RTP proxy.
This proxy rejects my calls (Not Acceptable without NAT Traversal),
which it didn't do before upgrading from STUN to ICE.
My NAT is a Port Restricted Cone.
I hope this is helpful. Let me know if you need more details, or
specific tests run.
------- 8< ------- 8< ------- 8< ------- 8< ------- 8< -------
INVITE sip:address@hidden SIP/2.0
Via: SIP/2.0/UDP 10.0.1.192:50353;rport;branch=z9hG4bK270198457
CSeq: 20 INVITE
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
User-Agent: Linphone/220.127.116.11 (eXosip2/3.6.0)
Subject: Phone call
o=31534325306 3273 3273 IN IP4 10.0.1.192
c=IN IP4 10.0.1.192
m=audio 7076 RTP/AVP 120 111 110 3 0 8 100 101
m=video 9078 RTP/AVP 103 102 99
Linphone-developers mailing list