[OpenSIPS-Users] loose_route detection of self

Jeff Pyle jpyle at fidelityvoice.com
Sat Mar 21 20:13:36 CET 2009


Ok, debugs:

On the reINVITE that fails:

DBG:core:grep_sock_info: checking if host==us: 11==11 &&  [ww.xx.yy.82] ==
[ww.xx.yy.83] 
DBG:core:grep_sock_info: checking if port 5060 matches port 5060
DBG:rr:after_strict: Next hop:
'sip:8009993355 at ww.xx.yy.83:5060;lr=on;ftag=as3137fec5;did=b92.be47e975' is
loose router 

On the reINVITE that works:

DBG:core:grep_sock_info: checking if host==us: 12==11 &&  [ff.gg.hh.94] ==
[ww.xx.yy.83] 
DBG:core:grep_sock_info: checking if port 5060 matches port 5066
DBG:core:check_self: host != me
DBG:core:grep_sock_info: checking if host==us: 11==11 &&  [ww.xx.yy.83] ==
[ww.xx.yy.83] 
DBG:core:grep_sock_info: checking if port 5060 matches port 5060
DBG:rr:after_loose: Topmost route URI:
'sip:8009993355 at ww.xx.yy.83:5060;lr=on;ftag=as27ab13f7;did=37e.68fb59e7' is
me 

ww.xx.yy.83 is Opensips.
ww.xx.yy.82 is Asterisk 1.2.26 (IP is right next to Opensips)
ff.gg.hh.94 is Asterisk 1.4.23.1 (IP is completely different than Opensips)

I see that the failing reINVITE causes a ³DBG:rr:after_strict² while the one
that succeeds causes a ³DBG:rr:after_loose², but I¹m not sure what that
means here.  I suppose the next stop is the RFC.

If anyone has any thoughts on this one, I¹d much appreciate hearing them.


Thanks,
Jeff


On 3/21/09 11:12 AM, "Jeff Pyle" <jpyle at fidelityvoice.com> wrote:

> Hello,
> 
> I seem to be having a problem with loose_route() not properly detecting when
> a Route set is its own.  Opensips 1.5 build 5491, same PSTN carrier in all
> cases.
> 
> Flow is Asterisk --> Opensips --> PSTN (Sonus NBSe)
> 
> The call sets up properly.  90 or 120 seconds into the call, the PSTN
> carrier sends a reINVITE to refresh the session.  If Asterisk 1.4.23.1 is
> the UAC, all is well.  If Asterisk 1.2.26 is the UAC, Opensips misidentifies
> the Route header in the carrier¹s reINVITE as foreign.  The t_relay then
> routes the packet to itself and bad things happen.
> 
> I¹ve done stare-¹n-compares on the packets in all cases.  The reINVITE from
> the carrier is almost exactly the same.  The differences are as follows:
> 
> - The Asterisk 1.4.23.1 UAC is using port 5066, where Asterisk 1.2.26 uses
> 5060.  This difference is reflected in the RURI of the reINVITE.
> 
> - The To field of the 1.4.23.1 UAC has the :5066 at the end of the URI; the
> 1.2.26 host does not have a port.
> 
> That's it.  The only other difference I can see in the messaging is that the
> 1.2.26 host puts "received=ww.xx.yy.zz" in its Via header of the initial
> transaction, where the 1.4.23.1 host does not.  But the reINVITE is a new
> transaction so I don't know how this could effect affect the reINVITE.
> 
> I am at a loss.  Any thoughts?
> 
> 
> Thanks,
> Jeff

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.opensips.org/pipermail/users/attachments/20090321/6a1e3d93/attachment.htm 


More information about the Users mailing list