[Serusers] Rewriting SDP Infos for NAT Traversal

Anthony Chapellier anthony at mbdsys.com
Thu Nov 10 12:54:32 CET 2005


I saw the config files examples and adapted one of them with my own 
configuration because I need to use SER Proxy as a simple proxy which 
support NAT traversal... To process REGISTER requests or INVITE 
requests, I got a SIP¨Server on another entity.

The scheme for my problem is the following :

UAC 1 ------ \
                        \
                         |------- NAT ---- SER Proxy ---- SIP Server
                        /
UAC 2 ------ /

REGISTER requests from UAC1 and UAC2 are processing correctly to SIP 
Serever via SER Proxy. But when I'm trying to do a call from UAC1 to 
UAC2, things are going bad.

Indeed, the first INVITE request from UAC1 is going to SIP Server via 
SER Proxy but when SIP Server process the INVITE request, he's trying to 
forward the INVITE Request directly to UAC2 without passing by SER Proxy...

The result is NAT don't allow INVITE request to go to UAC2 and the call 
can't be done.

So, is there a way to force my SIP Server to do the INVITE request to 
UAC2 via SER Proxy ? by doing a different REGISTER request or INVITE 
request ?

Thanks,

Greger V. Teigre a écrit :

> Anthony,
> If the only thing you want to do, is NAT traversal, then that's been 
> done before.  Have a look at http://onsip.org/ The Getting Started 
> document and config files explains how to do NAT traversal with 
> rtpproxy and mediaproxy.
> g-)
> ----- Original Message ----- From: "Anthony Chapellier" 
> <anthony at mbdsys.com>
> To: <serusers at lists.iptel.org>
> Sent: Wednesday, November 09, 2005 3:38 PM
> Subject: [Serusers] Rewriting SDP Infos for NAT Traversal
>
>
>> Hi,
>>
>> When an INVITE request is incoming, I need to rewrite VIA Header 
>> Field, Contact Header Field, (c=) field in SDP message core and (o=) 
>> field in SDP message core too with IP public adress of UAC. Those are 
>> needed by my SIP Server before SER Proxy forward the request to him.
>>
>> I got some success with rewriting Contact Header File by using 
>> fix_nated_contact() function and (c=) field with fix_nated_sdp("1") 
>> function. But I don't succeed at all in rewriting (o=) field and 
>> partially for VIA Header Field.
>>
>> To do so, I tried to use the following function  :
>>
>> fix_nated_sdp("8");       No Result :(
>> forcerport();                  It seems to add real IP public adress 
>> and port in VIA header field but 
>> it's                                     not rewriting IP private adress
>>
>> So, finally is it the good way to do this thing or is there something 
>> wrong with my behaviour ?
>>
>> Thanks,
>>
>>
>>
>> _______________________________________________
>> Serusers mailing list
>> serusers at lists.iptel.org
>> http://lists.iptel.org/mailman/listinfo/serusers
>>
>>
>
>
>
>
>


-- 
M. Anthony Chapellier
---------
MBDSYS SARL
139, avenue Paul Vaillant Couturier
93120 LA COURNEUVE
FRANCE

Tel : +33 (0) 148 35 20 46
Fax : +33 (0) 148 37 79 28

http://www.mbdsys.com





More information about the sr-users mailing list