Hi Iñaki,
in the case of STUN the connection information is already written with public ip, and could be that it is wrong detected (when it comes to port). Therefore u need a way to rewrite this info with the right IP as far as I understood (internal in this case, so the people behind the same NAT should send media directly to internal ip) . Maybe I am mistaken.
DanB
On 8/3/07, Iñaki Baz Castillo ibc@in.ilimit.es wrote:
El Friday 03 August 2007 11:15:57 Marc LEURENT escribió:
Hello everybody,
To remind you, I'm trying to set a SIP architecture for NATTED SIP users without using any rtp proxy (because of lack of ressource). STUN is working very well between 2 users in 2 differents NATs. But when they are behing the same NAT, they cannot reach the other.. In the INVITE and 200Ok SDP fields, they have put their public address with a port reserved with STUN: it's not working! I think that it is because it's difficult for them to reach the public IPaddress/port where they should send the RTP stream from inside the NAT.
So my idea was: Why not rewriting SDP fields to put their private address when they are behind the same NAT But I don't know how to rewrite the SDP fields for both users. (I have the private address of both users in the location database)
In NAT cases I compare the source IP of the caller with the IP where the called is:
NOTE: modparam("usrloc", "nat_bflag", 6)
if (nat_uac_test("19")) { ... setbflag(6); # NAT flag general if (method!="REGISTER") { fix_nated_contact(); setbflag(5); # NAT flag just for the caller
...
if (isbflagset(5)) { # Caller is behind NAT if ( $dd == $si ) { xlog("L_INFO", "Both users behind same NAT, so we dont use RtpProxy\n"); resetbflag(6); # Unset NAT flag general. } }
I think this is better choice than using RtpProxy and setting private IP's in SDP and Contact header.
-- Iñaki Baz Castillo ibc@in.ilimit.es
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users