[Serusers] Please help : how to disable losse routing ???

Nicolas RUIZ nruiz at vivaction.com
Thu Sep 9 08:10:01 UTC 2004


Thanks a lot for your help!

I want really to use strict-routing because I have a UA in rfc3261, and when
he make a call, he put the tag "LR" in the route fields of the ACK, and then
the call is cut after 20s.

Probably because my gateway Cisco (to PSTN) is only according to use RFC
2543.

That’s why I want the UA capably to work with IPTEL in strict routing.
I have the same problem with an ATA Cisco, but I have put an old firmware,
and that's work very good.  (CODE 3.1.1 (LR) >> CODE 3.1.0 (NO LR)).

I have take the module rr_mod.c and after, how can I compile the module
rr???

Best Regards,

Nicolas RUIZ. 

-----Message d'origine-----
De : Franz Edler [mailto:franz.edler at utanet.at] 
Envoyé : jeudi 9 septembre 2004 06:09
À : 'Martin Koenig [toplink-plannet GmbH]'; 'RUIZ Nicolas'
Cc : serusers at lists.iptel.org
Objet : RE: [Serusers] Please help : how to disable losse routing ???

From: Martin Koenig [toplink-plannet GmbH] Sent: Wednesday, September 08, 
 
> this is not an SER problem. Loose routing is basically done in the end
> devices. All you can control on the server is whether the server should be
> in the signalling proxy chain (record_route()) and whether you want to
> process route-header-fields (loose_route()) or forward to the final
> destinanation directly (t_relay() without loose_route()).

Sorry, this is not correct. The routing mechanism (loose or strict) has to
be followed by SIP proxies. Look at RFC 3261 para 16.6 step 6 where the
strict routing behavior is defined:
"If the copy contains a Route header field, the proxy MUST inspect the URI
in its first value. If that URI does not contain an lr parameter, the proxy
MUST ..."

But I expect that this behaviour is implemented in SER. In previous versions
of SER there was the possibility to force SER to do only strict routing.
This has been disabled now and in my previous comment I looked into the
documentation which is not updated accordingly and still mentions the
function strict_route(). But looking into the code of rr_mod.c you can read
as a comment:
"I do not want people to use strict routing so it is disabled by default,
you should always use loose routing, if you really need strict routing then
you can replace the last zeroes with REQUEST_ROUTE to enable strict_route
and record_route_strict. Don't do that unless you know what you are really
doing!"

> As loose routing is the standard routing procedure as defined in RFC3261,
> strict routing is obsolete.

To be precise: strict routing is deprecated. If you have a strict router in
a SIP router chain the proxy forwarding to a strict router has to be aware
of this fact as mentioned above.


From: RUIZ Nicolas  Sent: Wednesday, September 08, 2004 9:10 PM

> When I put strict_route at the place of loose_route, I have an error.
> (Module missing). Ser version is : 0.8.12.
> What can I modify to apply strict routing only?

Sorry I did not check that this previous function has been eliminated. But
following the comment in rr_mod.c there is a possibility to force SER into
strict routing (see above) behavior. Look into the code. Than you also have
to use "record_route_strict" instead of "record_route".

But I have heavy doubts that this will help your problems. Do you really
know why you want to fall back to a deprecated routing behavior?

Franz






More information about the Serusers mailing list