[OpenSER-Users-ES] Asterisk y LoopBack en SIP (dolor de cabeza)

Iñaki Baz Castillo ibc at aliax.net
Mon Aug 27 15:48:46 CEST 2007


Hola, estoy probando este escenario:

Asterisk genera una llamada SIP a alguna extensión de OpenSer. Todo 
correcto aún en el caso de que se cree un LoopBack en Asterisk:

- Asterisk llama a sip:500 at openser.dominio.org
- OpenSer recibe la llamada y la vuelve a encaminar a Asterisk con rewriteuri.
- Asterisk la recibe, avisa de "482: Loop Detected" pero la recibe y se 
establece la comunicación.
- Por supuesto, puesto que Asterisk tiene un SIP cutre, el siguiente BYE no 
respeta el "Record-Route" y no pasa por OpenSer, en fin...

Este es el log de Asterisk:

-----------------------------------------------------------------------------------------
   -- Executing [KK_500 at default:1] Dial("OSS/dsp", "SIP/openser/500") in new stack
    -- Called openser/500
    -- Got SIP response 482 "Loop Detected" back from 82.94.0.210
    -- Now forwarding OSS/dsp to 'Local/500 at entrantes-openser' (thanks to SIP/openser-08351810)
    -- Executing [500 at entrantes-openser:1] Playback("Local/500 at entrantes-openser-e11e,2", "demo-congrats") in new stack
    -- Local/500 at entrantes-openser-e11e,1 answered OSS/dsp
-----------------------------------------------------------------------------------------


Pero ahora me da por poner un simple alias: 888 -> 500.

- En Asterisk hago una llamada a 888 at openser.dominio.org.
- OpenSer encuentra un alias de 888 a 500 y reescribe el URI.
- Entonces de nuevo OpenSer reescribe el URI y encamina al Asterisk.
- Pero ahora Asterisk se vuelve loco del todo, avisando decenas de 
veces de "LoopBack".

Ahora en Asterisk leo:

-----------------------------------------------------------------------------------------
    -- Executing [888 at entrantes-openser:1] Dial("Local/888 at entrantes-openser-870f,2", "SIP/openser/888||") in new stack
    -- Called openser/888
    -- Got SIP response 482 "Loop Detected" back from 82.94.0.210
    -- Now forwarding Local/888 at entrantes-openser-870f,2 to 'Local/888 at entrantes-openser' (thanks to SIP/openser-081fdf50)
    -- Executing [888 at entrantes-openser:1] Dial("Local/888 at entrantes-openser-8f00,2", "SIP/openser/888||") in new stack
    -- Called openser/888
    -- Got SIP response 482 "Loop Detected" back from 82.94.0.210
    -- Now forwarding Local/888 at entrantes-openser-8f00,2 to 'Local/888 at entrantes-openser' (thanks to SIP/openser-0823aed8)
    -- Executing [888 at entrantes-openser:1] Dial("Local/888 at entrantes-openser-71d9,2", "SIP/openser/888||") in new stack
    -- Called openser/888
    -- Got SIP response 482 "Loop Detected" back from 82.94.0.210
    -- Now forwarding Local/888 at entrantes-openser-71d9,2 to 'Local/888 at entrantes-openser' (thanks to SIP/openser-081fdf50)
-----------------------------------------------------------------------------------------


En fin, me gustaría preguntaros por vuestras experiencias exprimiendo el stack
SIP de Asterisk. ¿Por qué demonios me permite loopback directo pero no lo permite
si es un alias? ¿acaso se fija en el "To:" por alguna razón?

Saludos y gracias por cualquier aclaración.


-- 
Iñaki Baz Castillo




More information about the Users-es mailing list