[SR-Users] default kamailio configuration

Klaus Darilion klaus.mailinglists at pernau.at
Tue Jun 26 10:06:14 CEST 2012



On 25.06.2012 14:44, Vitaliy Aleksandrov wrote:
> Hi All,
>
> After reading default kamailio configuration i can't understand why does
> kamailio remove preloaded route headers from the incoming initial INVITE
> before calling record_route().
>
> remove_hf("Route");
> if  (is_method("INVITE|SUBSCRIBE"))
>          record_route();

Pre-loaded route sets can be used to abuse the proxy as an open relay. 
This is bad. If a request hits my proxy, then I want to define how the 
message is routed, and I do not want to route the message like somebody 
else wants it.
>
> What will happen if an INVITE comes from another SIP proxy which wants
> to stay in the middle of the dialogue ?

Only "Route" headers are removed, not "Record-Route" headers which 
create the route-set.

> For example, during Re-INVITE UA from our local site will construct
> in-dialog INVITE with R-URI taken from the remote contact and send it to
> our local proxy according to RR. Local proxy will process it in
> route[WITHNDLG] where loose_route() function will remove top most RR
> header because it points to us and since there is no more RR records
> forward the request to a destination from the R-URI.  As i understand in
> that case remote proxy will not receive any in-dialog requests from us.

Sure it does. As only the pre-loaded route is remove, not the 
Record-Route headers. Thus, the in-dialog route set is not affected, 
only the out-of-dialog route set (pre-loaded) is manipulated.

regards
Klaus



More information about the sr-users mailing list