El Tue, 27 Apr 2010 15:58:51 +0200 Iñaki Baz Castillo ibc@aliax.net escribió:
El día 27 de abril de 2010 15:55, Jon Bonilla manwe@aholab.ehu.es escribió:
Respecto a la elección del socket de kamailio en el caso de varias redes, tengo puesto en el kamailio.cfg mhomed=1 que creo que servía para que kamailio escogiera la iface más adecuada en cada caso.
Nunca he usado mhomed=1. Lo que hace es que Kamailio escoja el interfaz adecuado en función de la IP destino. Tal vez en este caso hace una consulta a las rutas IP del sistema y obtiene el interfaz/IP asignado a cada ruta destino, lo intenta setear y falla puesto que kamailio no escucha en dicha IP. Es posible que el workaround de fijar la IP origen para cada ruta sea la solución, no lo sé, ya te digo que podría ser tema del mhomed=1 (apuesto lo que sea). Tiene sentido puesto que en modo normal (mhomed=0) kamailio no intenta averiguar el interfaz de salida sino que lo saca, por defecto, por el mismo interfaz de llegada (salvo casos de usuarios registrados por otro socket y cosas así).
Sí, estoy convencido de que no habría problema con mandar por la ip virtual sin el mhomed. De hecho ya tengo otra instalación de pruebas funcionando de esa manera. Lo que pasa es que esa instalación sólo escucha la ip pública, no tiene que mandar requests de una red a otra.
En este caso no poner mhomed creo que es inviable porque no podría mandar paquetes de una red a la otra.
He buscado por force_socket y lo único que he visto es una función de nathelper para forzar el proxy de comunicación con rtpproxy.
http://www.kamailio.org/dokuwiki/doku.php/core-cookbook:1.5.x#force_send_soc...
Sí, lo había visto justo un minuto después de contestarte. He mandado otro correo. Creo que no me sirve ya que he de mandar por dos sockets distintos en función del destino de la llamada.
Creo que me veo abocado a crearme un script en haresources que me setee la ip src addr de ambas redes. Lo malo es que el haresource que ya existe sólo lo permite en la ruta por defecto. :(
Gracias!