[SR-Users] Kamailio v4.0.2, iPhone, TCP connection and PJLIB

Roberto Fichera kernel at tekno-soft.it
Fri Aug 30 17:30:34 CEST 2013


On 08/16/2013 12:29 PM, Roberto Fichera wrote:
> On 08/14/2013 09:58 PM, Vitaliy Aleksandrov wrote:
>> On 08/14/2013 07:32 PM, Roberto Fichera wrote:
>>> On 08/14/2013 04:36 PM, Vitaliy Aleksandrov wrote:
>>>> If you won't be able to disable SIP ALG on your router you can fill $avp(received) manually before calling save():
>>>>      $avp(received)  = "sip:" + $si + ":" + $sp + ";transport=" + $proto;
>>>>
>>>> In this case all user location records will have the "received" attribut even if a UA isn't behind NAT, but I don't
>>>> see any problems with that.
>>> This one looks working, but the callee doesn't answer correctly because the TCP isn't correct:
>>>
>>> Contact::
>>> <sip:528 at 94.94.X.X:1380;transport=TCP;ob>;q=;expires=294;flags=0x0;cflags=0x0;state=0;socket=<tcp:178.79.X.X:5060>;methods=0x1FDF;received=<sip:94.94.X.X:37030;transport=tcp>;user_agent=<PJSUA
>>>
>>> v2.1-svn Linux-3.10.5.201/x86_64/glibc-2.17>;reg-id=0
>>>
>>> The contact uses a port which isn't translated inside by the router, the received field shows the right one.
>>> Should I change the Contact header instead? In case, how can I do that?
>> I didn't understand what "callee doesn't answer correctly" means.
>> Callee doesn't know what's in the received field of its registration.
> Sorry! My typo! I meant why kamilio wasn't reusing the TCP port specified in the REGISTER even for the INVITE.
> I mean, kamailio now knows the received field so I'm expecting it routes the requests for the called UA through the
> address:port specified in this field.
>
>> The only problem I see is that your router changes ip in the contact field of REGISTER requests and then kamailio puts
>> this value
>> (new_ip:old_port) to INVITEs destined to UAs behind your NAT router.
> Indeed, my testing router is affected by this ALG "problem"! I guess it's better to disable it and complete simple TCP tests
> then move to TLS.
>
>> It's not likely, but maybe pjsip doesn't like INVITEs with RURI which differs from what it put to the contact during
>> registration.
>> IIRC pjsua prints lots of debugging information. So you can check if pjsua shows anything when INVITE comes in its log
>> and also attach a trace of such a call.
> pjsua doesn't report any problem so far, so seems accepting the INVITE.
>
>> P.S. IMHO the best way to pass sip through such routers is sip over TLS.
> Yep! I'll do that.

Just to say that everything works pretty fine once moved to TLS!

>
>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> sr-users at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>




More information about the sr-users mailing list