On Thu, Oct 30, 2008 at 8:44 AM, Iņaki Baz Castillo <span dir="ltr"><<a href="mailto:ibc@aliax.net">ibc@aliax.net</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
2008/10/30 Brett Nemeroff <<a href="mailto:brett@nemeroff.com">brett@nemeroff.com</a>>:<br>
<div class="Ih2E3d">> Hey All,I'm having a problem with a multi-homed proxy. It operates on two<br>
> IPs, one is an internal address and the other is an external public IP.<br>
><br>
> The call I'm having trouble with goes like this:<br>
><br>
> Call from PSTN->SIP gateway on internal network TO OpenSIPs<br>
><br>
> OpenSIPs uses LCR + RTProxy and sends call to Provider<br>
><br>
> Call is established just fine.<br>
><br>
> Hangup on Provider side. Provider sends OpenSIPs BYE<br>
><br>
> OpenSIPs sends BYE to INTERNAL IP (why?)<br>
<br>
</div>If the BYE from providers arrives correctly to OpenSIPS it means that<br>
loose routing is working correctly.<br>
When OpenSIPS receives that in-dialog request (BYE) it must route it<br>
to the address indicated in RURI. What is that RURI?<br>
<br>
Note also that the RURI in the BYE is the URI in the Contact of the<br>
INVITE, and if there NAT issues the proxy must change<br>
(fix_natted_contact) that Contact and replace the private IP:port with<br>
the received IP:port.<br>
<br>
So, show a capture to find the problem.<br>
<font color="#888888"></font></blockquote><div><br><br>Yes, the BYE arrives just fine.. it's that it isn't relaying it with
loose routing right. OpenSIPs is sending it's own internal address
instead of sending it to the other party.. The 200 OK and ACKs all work
just fine.. just the BYE is broken.<br>
<br>
I tried to post the full trace, but it was too long (41K with a limit of 40K) So I stuck it in a pastebin: <a href="http://www.pastebin.ca/1240174" target="_blank">http://www.pastebin.ca/1240174</a><br>The R-URI in the BYE from the provider looks good.. But it comes with route headers that show both addresses from the double RR. Which I thought was right. I was under the assumption that the loose routing should inspect the route header and skip routes that are itself?<br>
<br>Please note, the provider isn't sending the BYE to the internal address. The provider sends it to OpenSIPs Public address. Which is correct.. but then OpenSIPs kills the dialog and relays the BYE to it's OWN internal address. Which of course, there is no longer a dialog since it was killed and it replies "404 Not here".<br>
<br>Any ideas?<br><br>
<br>
<br> </div></div><style></style>