[OpenSIPS-Users] loose_route detection of self
Jeff Pyle
jpyle at fidelityvoice.com
Sat Mar 21 16:12:36 CET 2009
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
More information about the Users
mailing list