[Serusers] add_rcv_param() for INVITEs

Andrei Pelinescu-Onciul andrei at iptel.org
Wed Jun 8 14:55:39 CEST 2005


On May 30, 2005 at 11:08, Martin Koenig <martin.koenig at toplink-plannet.de> wrote:
> Hello,
> 
> is it possible to use add_rcv_param() also for Contact-HF of INVITEs, 
> instead of fix_nated_contact()?
> 
> This would make sure that the NATed End Device gets fed exactly the 
> contact as R-URI that it announced in the INVITE:
> 
> Example R-URI in Loose-Route Requests for fix_nated_contact():
> 
> Ser (1.2.3.4):
> INVITE device at 4.5.6.7
> Route: 1.2.3.4;lr=on
> 
> Device (10.0.0.1, NAT 4.5.6.7):
> INVITE device at 123.123.123.123
> 
> With add_rcv_param():
> 
> Ser:
> INVITE device at 10.0.0.1;rcv_param=4.5.6.7
> Route: 1.2.3.4;lr=on
> 
> Device:
> INVITE device at 10.0.0.1
> 
> The problem is that the End-Device, in the fix_nated_contact() callflow, 
> has to accept a Request that is not really for this device (IP in 
> Request-URI != IP of the Device). Imagine a Ser checkip uri == myself. 
> This would fail without knowing the public IP of the NAT and 
> hard-conding it into Ser.cfg.
> 
> Does Ser support the rcv_param in Request-URI also?

No, but it would be very easy to add a function that would set the
dst_uri to the received_param value and would remove receveid_param from
the uri. 
The question is where it will be the best place for it: the uri module,
nathelper?


Do you really need it?


Andrei




More information about the sr-users mailing list