El Lunes, 31 de Marzo de 2008, David Villasmil escribió:
Sabes dónde puedo encontrar info sobre cómo configurar openser detrás de nat? la llamada sale perfecta y conecta y tal pero... no audio!! he intentado:
Sinceramente, da igual lo que hayas intentado, lo que hay que averiguar es la **causa**. Si consigues que funcione "de chiripa" a base de prueba y error no te extrañes de que al mínimo cambio te deje de funcionar sin saber de nuevo "porqué".
Mi consejo es el siguiente (y es como yo más he aprendido sobre SIP y NAT):
- Usa ngrep (o Wireshark/Ethereal) para capturar los mensajes SIP y examina MUY BIEN los SDP, el cómo salen y el cómo llegan a cada extremo. Así de fácil verás si en los INVITE que llega al llamado llega en el SDP la IP pública y en el 200 OK también.
- Usa también Tcpdump (si usas un softphone en Linux) y mira a ver a dónde está enviando el RTP.
Y luego dices que:
la llamada sale perfecta y conecta
Eso no es suficiente, ¿has comprobado si pasado unos 40 segundos (lo típico que dura una "conexión" UDP abierta en el router) el llamado puede mandar un BYE y lo recibe el llamante? ¿has tenido en cuenta el asunto del rport? es necesario si hay NAT y un router te saca por un puerto distinto del que tienes en la máquina con IP privada) -> force_rport() Y sobre todo, comprueba los "Contact" que llegan al llamado en el INVITE y el "Contact" que llega al llamante en el "200 OK", ¿son direcciones públicas o privadas? (deben ser las públicas que ha mapeado el router NAT).
Saludos.