[OpenSIPS-Users] Unexpected loose_route() behavior
Bogdan-Andrei Iancu
bogdan at voice-system.ro
Thu Jun 10 22:20:54 CEST 2010
Hi Matthew,
you have a logical bug in your routing - all sequential requests are
routed in SIP based only on Route hdrs (via loose_route), so there is no
need to do manual routing for them. Manual routing is done only for
initial requests.
Better see http://www.opensips.org/Resources/Webinars#toc11
When the sequential request comes from the provider, it will have a
Route hdr pointing to your opensips and in RURI will be the IP of the
final Asterisk box (contact from 200 OK) -> after loose_route, opensips
will remove the Route hdr with its IP and the request will be routed
(RURI based) to proper Asterisk.
Regards,
Bogdan
Matthew Lehner wrote:
> I am setting up opensips to act as a proxy between a SIP trunk
> provider and more than one asterisk server. I am using alias_db to
> determine which asterisk server a particular DID/user should be
> relayed to. I am also using record_route() to ensure my proxy stays in
> the entire dialog of the call.
>
> The initial requests go through just fine, but subsequent requests in
> the same dialog from the SIP provider are not getting routed properly
> because of loose_route().
>
> When the request from the SIP provider arrives, it hits loose_route()
> and the RURI gets changed to sip:222.222.222.227;lr=on which does not
> contain a username and so alias_db can no longer match the call
> details and route the request to the proper asterisk server.
>
> The way I understood loose_route() was supposed to work is.. it checks
> the top-most Route header to see if it is the local proxy.. if it is
> it removes that Route and if there is another Route below it.. it will
> change the RURI to that.
>
> If I just don't do loose_route() on requests from the SIP provider,
> everything works as expected.. but this does not seem like the right
> solution to the problem.
>
> I have included debug output from opensips, along with some of my own logging.
>
> 333.333.333.x is the SIP provider
> 222.222.222.x is my opensips proxy
>
> Regards,
>
> Matt
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
--
Bogdan-Andrei Iancu
www.voice-system.ro
More information about the Users
mailing list