Hi Guillaume,

The incoming BYE is broken - the IP of your OpenSIPS can be found both in RURI and in the top Route header. As the IP is found in RURI makes OpenSIPS think that the previous hop was a strict router. and this leads to the infinite loop.

Looking at it, I see the typical mistake of doing a fix_nated_contact() and overwriting the original contact URI in the 200 OK for INVITE (this contact is used as part of the routing set for routing back sequential requests like BYE)

Regards,

Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com

On 15.11.2016 19:12, guillaume Montassier wrote:
Hello all,

I'm working a project with multiples opensips (each handling a particular role). So when an invite goes in our plateform, it crosse multiples openips and can even sometime go though a specific opensips multiples times. My problem is: When the called send a BYE I have a strange behavior. One of my opensips which receive the BYE resend it to itself and suppress the wrong route (last route instead of the first route...).

- For example this is the BYE message my opensips receive :

2016/11/15 15:24:08.316573*172.99.37.70:5060* -> *172.99.37.52:5060*
BYE sip:*[email protected]:5060*;transport=udp SIP/2.0
Route: <sip:*172.99.37.52*;lr;did=7bb.ca4be925> =>*itself* Route: <sip:*172.99.37.52:5061*;lr;ftag=as2d12af76;did=7bb.af095117> =>*Next hope*
Route: <sip:172.99.37.70;lr;did=7bb.40f20381>
Route: <sip:172.99.37.59;lr;ftag=as2d12af76;did=7bb.70c3b743>
Route: <sip:172.99.37.52:5062;lr;ftag=as2d12af76;did=7bb.bc13056>
Route: <sip:172.99.37.52:5061;lr;ftag=as2d12af76;did=7bb.9f095117>
Route: <sip:172.99.37.52;lr;did=7bb.ba4be925>


- This is what I should have as result (It remove itself from the Route header and send the BYE to the next hop (which is 172.99.37.52:5061) ):

2016/11/15 15:24:08.316573 *172.99.37.52:5060* -> *172.99.37.52:5061* =>*Send to Next hope*
BYE sip:[email protected]:5060;transport=udp SIP/2.0
*Route*: <sip:*172.99.37.52:5061*;lr;ftag=as2d12af76;did=7bb.af095117> =>*Next hope is the first route header*
Route: <sip:*172.99.37.70*;lr;did=7bb.40f20381>
Route: <sip:172.99.37.59;lr;ftag=as2d12af76;did=7bb.70c3b743>
Route: <sip:172.99.37.52:5062;lr;ftag=as2d12af76;did=7bb.bc13056>
Route: <sip:172.99.37.52:5061;lr;ftag=as2d12af76;did=7bb.9f095117>
Route: <sip:172.99.37.52;lr;did=7bb.ba4be925>


- This is what I have (send to itself and remove the wrong route...):

2016/11/15 15:24:08.316573 *172.99.37.52:5060* -> *172.99.37.52:5060* =>*send to itself* BYE*sip:172.99.37.52:5060*;transport=udp SIP/2.0 =>*modify bye?* *Route*: <sip:*172.99.37.52*;lr;did=7bb.ca4be925> =>*don't supress the route header*
Route: <sip:172.99.37.52:5061;lr;ftag=as2d12af76;did=7bb.af095117>
Route: <sip:172.99.37.70;lr;did=7bb.40f20381>
Route: <sip:172.99.37.59;lr;ftag=as2d12af76;did=7bb.70c3b743>
Route: <sip:172.99.37.52:5062;lr;ftag=as2d12af76;did=7bb.bc13056>
Route: <sip:172.99.37.52:5061;lr;ftag=as2d12af76;did=7bb.9f095117>
=>*The last route is suppress*


I know that my first header route is the same than my last header route, and maybe this is why I have this beavior, but this seems really odd to me.

Thank you all,

/Guillaume


_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to