[OpenSER-Users-ES] Crear cabecera "Route" en vez de modificar URI cuando destino es "loose router".

Jesus Rodriguez jesusr at voztele.com
Tue Nov 6 12:16:00 CET 2007


Hola Iñaki,


> El Tuesday 06 November 2007 11:34:22 Jesus Rodriguez escribió:
>> Hola,
>>
>>> El Domingo, 4 de Noviembre de 2007, Jesus Rodriguez escribió:
>>>> Hola Iñaki,
>>>>
>>>>> Hola, en el RFC 3261 pone claramente que siempre que sea  
>>>>> posible es
>>>>> preferible
>>>>> que el proxy SIP fuerce el desvío de un mensaje a otro servidor  
>>>>> SIP
>>>>> insertando en el mensaje la cabecera "Route" (siempre claro, que
>>>>> sepa de
>>>>> antemano que el servidor destino es un "loose router").
>>>>
>>>> ¿En que parte pone esto?. En los puntos 16.4, 16.5 y 16.6 no lo
>>>> entiendo así... además, es bastante habitual cargarse los  
>>>> "preloaded
>>>> routes" si llegan a un proxy.
>>>
>>> 16.6 Request Forwarding
>>>
>>>   7. Determine Next-Hop Address, Port, and Transport
>>>
>>>          The proxy MAY have a local policy to send the request to a
>>>          specific IP address, port, and transport, independent of  
>>> the
>>>          values of the Route and Request-URI.  Such a policy MUST
>>> NOT be
>>>          used if the proxy is not certain that the IP address,
>>> port, and
>>>          transport correspond to a server that is a loose router.
>>>          However, this mechanism for sending the request through a
>>>          specific next hop is NOT RECOMMENDED; instead a Route  
>>> header
>>>          field should be used for that purpose as described above.
>>>
>>>
>>>
>>> Si por ejemplo un usuario llama a un número PSTN entiendo que el
>>> proxy "MAY
>>> have a local policy to send the request to a specific IP address,
>>> port, and
>>> transport, independent of the values of the Route and Request-URI."
>>>
>>> O sea, el proxy rutará la llamada al gateway SIP2PSTN.
>>>
>>>
>>> Aunque ahora que lo leo no me queda tan claro, déjame que lo relea
>>> unas
>>> cuantas veces.
>>
>> Como te comenté, se suelen eliminar todas las "preloaded routes" que
>> entran en un proxy... si te las tragas podrían pasarse toda tu
>> política de routing (y de seguridad) por el forro...
>
> Ok, entonces ¿debería borrar las cabeceras "Route" que entran?  
> (después claro
> de hacer loose_route().


Sólo se borra el Route cuando es una request inicial. Por ejemplo:

     if ( !has_totag() || is_method("REGISTER") ) {
         # initial request -> preloaded ROUTE set ?
         if (loose_route()) {
             xlog("L_ERR",
                 "Attempt to route with preloaded Route");
             sl_send_reply("403","Preload Route denied");
         }
     }


Saludos
JesusR.

------------------------------------
Jesus Rodriguez
VozTelecom Sistemas, S.L.
jesusr at voztele.com
http://www.voztele.com
Tel. 902360305
-------------------------------------








More information about the Users-es mailing list