Olvida directamente ICE y TURN, Asterisk ni sabe que existen.
Lee sobre cómo ayuda un servidor STUN a un equipo SIP (sea tfno, pbx o lo que
sea) a averiguar su situación tras NAT y a camuflar las IP's y puertos que
pone a nivel de aplicación SIP para "simular" tener dirección pública.
Un saludo y gracias
- STUN: http://tools.ietf.org/html/rfc5389
- ICE: http://tools.ietf.org/html/draft-ietf-mmusic-ice
- TURN: http://tools.ietf.org/html/draft-ietf-behave-turn
Es interesante tener en cuenta que ICE hace uso "de todo". Es decir, es un
mecanismo que usa otros (como STUN y TURN).
Así a boto pronto, un tfno configurado para hacer ICE lo primero que hace es
consultar al servidor STUN su posible situación detrás de NAT. Con esto
podría ser suficiente por lo que habría audio bidireccional sin necesidad de
un proxy de media (en caso de que ambos tfnos tengan IP o puedan hacer STUN).
Podría ocurrir que uno de los tfnos está detrás de NAT simétrico (tras el cuál
STUN es imposible, no funciona) por lo que le protocolo ICE ahce algunas
virguerías enviando varias direcciones de media candidatas en el SDP y se
testean todas. En algunos casos podría ser suficiente.
Y para el caso peor (que tal vez sea ambos tfnos tras distintos NAT
simétricos) entonces ICE hace uso del servidor TURN configurado). TURN es
básicamente un servicio de relay de RTP que puede requerir autenticación y
autorización y esas cosas. Por ejemplo, los X-Lite y compañía vienen
preparados para ello.
Saludos.
Según tengo entendido PJSIP dispone de una implementación funcional de ICE...
También tienes numb, que es un servicio gratuiro de STUN y TURN
(http://numb.viagenie.ca/) y TurnServer
(http://turnserver.sourceforge.net/), un server STUN y TURN que es
GPL.
De todas maneras, o no te has explicado con suficiente precisión o
creo que andas algo equivocado... IMHO
ICE es un protocolo end-to-end, no existe "ICE server".
- STUN: http://tools.ietf.org/html/rfc5389
- ICE: http://tools.ietf.org/html/draft-ietf-mmusic-ice
- TURN: http://tools.ietf.org/html/draft-ietf-behave-turn