iptables + vpnc + Cisco IP Phone 7941

0

Tengo una puerta de enlace Linux con el kernel 2.6.39 conectado a un Cisco ASA 5500 con vpnc. Estoy usando iptables con enmascaramiento y reenvío para dar acceso a la LAN al dispositivo tun0 conectado a la VPN.

Mi Cisco IP Phone 7941 puede conectarse al administrador de llamadas, pero solo obtengo audio unidireccional cuando se establece una llamada. tcpdump -i any en mi puerta de enlace LAN muestra el tráfico rtp que se origina en la IP de lan de mi teléfono, luego se conecta NAT a la dirección tun0, y finalmente revisa mi interfaz ext encapsulada en esp. tcpdump en la interfaz tun0 solo muestra el tráfico que va al destino rtp desde la IP de tun0 src. Desde el punto de vista de mi LAN, el tráfico rtp saliente se está traduciendo correctamente.

Sin embargo, el syslog de asa muestra que mi dirección IP de lan, no mi dirección tun0, se cae en el servidor VPN remoto. ¿Alguna sugerencia sobre cómo proceder con la solución de problemas?

asdfgg
fuente
Entonces, ¿la transmisión rtp saliente no se ve obstaculizada? ¿Dónde se detiene el flujo entrante de rtp? Lo más probable es que haya un firewall allí que tenga algún tipo de alg, spi u otra forma de configuración de detección de intrusos. El otro problema común con el audio unidireccional es un problema con la activación de puertos o un mal recorrido NAT, básicamente asegúrese de que todos sus puertos a lo largo de toda la ruta estén abiertos.
MaQleod
El rtp saliente está bien. Parece que rtp para el servidor del teléfono tiene una src ip que no es enrutable en la red corporativa a la que me estoy conectando. ver el registro a continuación. Parece que el teléfono ip no se está ejecutando correctamente, pero tcpdump en el enrutador de mi casa muestra que se está produciendo nat. % ASA-4-402116: el paquete interno decapsulado no coincide con la política negociada en la SA. El paquete especifica su destino como xxx.xxx, su origen como MYHOMELANIP y su protocolo como 6. La SA especifica su proxy local como 0.0.0.0/0.0.0.0/0/0 y su proxy_remoto como MYVPN_PPPADDR / 255.255.255.255 / 0 / 0.
asdfgg

Respuestas:

0

De http://docwiki.cisco.com/wiki/Cisco_Unified_Communications_--_One-Way_Audio :

"Una causa común de audio unidireccional o no direccional es cuando existe traducción de direcciones de red (NAT), traducción de direcciones de puerto (PAT) o firewalls entre dos puntos finales. El protocolo SCCP incorpora direcciones IP en la carga útil del paquete IP para indicar qué Dirección IP a la que enviar paquetes RTP. Si el dispositivo que realiza NAT o PAT desconoce este hecho, las direcciones IP incorporadas no se traducen. Por lo tanto, se obtienen resultados de audio unidireccionales o no. "

Utilice http://oisec.net/download/skinny/1.48/skinny-proxy.pl en su puerta de enlace. Escuchará en el puerto 2000 y redirigirá las llamadas desde su teléfono IP al administrador de llamadas. Utilizar:

iptables -t nat -A PREROUTING -i $LAN_IFACE -p tcp --dport 2000 -j REDIRECT --to-ports 2000

para redirigir el tráfico LAN a skinny-proxy. Funciona.

BurbertBlokenberg
fuente