[OpenSIPS-Users] loose_route()

Victor Gamov vit at euro-comm.net
Wed Nov 10 18:21:41 CET 2010


On 10.11.2010 13:13, Bogdan-Andrei Iancu wrote:
> Hi Victor,
>
> That is strict routing - in SIP you have 2 types of routing - Strict
> Routing (old one) and Loose Routing (new one).

I see about strict and loose routing :-)

I can not understand how loose_route() process requests :-(

> But in your case, the previous hop is strict route (this is why you have
> opensips IP in RURI)

hmmm

> and next hop (next Route) is a Loose Route (see the
> lr param). So OpenSIPS is doing a Strict to Loose Routing conversion..
>
> Lost you? :D

:-)

No problems!

I hope that loose_route() will process Route headers not RURI.

RFC-3261 16.4 says that
"The proxy MUST inspect the Request-URI of the request.  If the
    Request-URI of the request contains a value this proxy previously
    placed into a Record-Route header field (see Section 16.6 item 4),
    the proxy MUST replace the Request-URI in the request with the last
    value from the Route header field, and remove that value from the
    Route header field.  The proxy MUST then proceed as if it received
    this modified request."

So loose_route() inspect R-URI.   But R-URI
sip:74951000000 at X.X.X.X:5060
is not the same as inserted into Route
(sip:X.X.X.X;lr=on;ftag=2204003977).

So Route header
Route: <sip:X.X.X.X;lr=on;ftag=2204003977>
removed, R-URI untouched, next Route processed and $du is 
sip:X.X.X.X:50080 now.

As my script does not decide to call lookup() but t_relay(), then 
request forwarded to $du.

This was my (incorrect) logic...

-- 
CU,
Victor Gamov
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vit.vcf
Type: text/x-vcard
Size: 156 bytes
Desc: not available
URL: <http://lists.opensips.org/pipermail/users/attachments/20101110/74e5e11a/attachment.vcf>


More information about the Users mailing list