Característica de VPN IPSec que permite que dos puntos finales se comuniquen entre sí incluso si están detrás de un dispositivo NAT / PAT.
¿Qué es NAT-T?
- NAT-T (NAT Traversal) permite que el tráfico IPsec pase a través de dispositivos que hacen NAT (Network Address Translation).
- Problema: IPsec tradicional (ESP, protocolo 50) no maneja bien cambios en IP/puertos.
- Solución: NAT-T encapsula ESP dentro de UDP (puerto 4500), facilitando su transporte.
¿Por qué NAT y IPsec entran en conflicto?
- NAT modifica las cabeceras IP (dirección IP y puertos).
- ESP (Encapsulating Security Payload) no tiene puertos TCP/UDP → NAT no puede manejarlo bien.
- Cambios inesperados rompen la integridad de IPsec.
¿Cómo funciona NAT-T?
Detección de NAT:
- Durante el intercambio inicial IKE (fase 1).
- Se comparan las IPs originales vs recibidas.
Encapsulamiento:
- Si se detecta NAT, el tráfico ESP se encapsula en UDP 4500.
- Permite que routers/firewalls NAT manejen el tráfico como cualquier paquete UDP.
Mecanismo de Detección de NAT
Durante la negociación IKE_SA_INIT (en IKEv2) o Main Mode (en IKEv1):
- Cada lado envía un hash de su IP.
- Si el hash recibido no coincide, se detecta la presencia de NAT.
¿Cómo funciona NAT-T con IPSec?
En los mensajes de Main Mode 1 y 2, se realiza la negociación de NAT-T, es decir, los peers se notifican entre sí que admiten la función NAT-T enviando un hash de RFC 3947 como una de las cargas útiles en los mensajes.
Mensajes de Main Mode 3 y 4 | Detección de NAT (NAT-D)
En los mensajes de Main Mode 3 y 4, se realiza NAT-DIscovery (NAT-D). La carga útil de NAT-D es enviada por cada peer VPN, que es un hash de las IP originales y los números de puerto.
Los dispositivos intercambian 2 cargas útiles NAT-D, una con IP de origen y número de puerto y otra con IP de destino y número de puerto.
El dispositivo RT-Site1 (10.10.10.1) envía lo siguiente:
- Un hash de la dirección IP de origen y el puerto (10.10.10.1 y 500): bb4939e1b7de5af5a4b508587551894c278f65a2
- Un hash de la dirección IP de destino y el puerto (10.12.0.5 y 500): 4d8065acde18827803936075a97461de5d90cbbb
El dispositivo RT-Site2 (10.12.0.5) responde con lo siguiente:
- Un hash de la dirección IP de origen y el puerto (10.12.0.5 y 500): a0d9d4205e26570eb996ceb7983a67a085ac77c6
- Un hash de la dirección IP de destino y el puerto (10.10.10.1 y 500): bb4939e1b7de5af5a4b508587551894c278f65a2
El dispositivo receptor recalcula el hash y lo compara con el hash recibido y, si no son iguales, significa que existe un dispositivo habilitado para NAT / PAT (firewall / enrutador) a lo largo de la ruta de transmisión entre los peers. (En nuestra captura de paquetes, el hash no es el mismo, por lo que existe un dispositivo habilitado para NAT / PAT entre peers VPN).
Mensaje Main Mode 5 y 6 | El inicio de la encapsulación de paquetes
Como el dispositivo NAT/PAT ha sido detectado, NAT-T iniciará el proceso, es decir, cambiara el transporte ISAKMP con el puerto UDP 4500 en lugar del puerto UDP 500 a partir de los mensajes de Main Mode 5 y 6.
NAT-T & IKE Fase 2 (Quick Mode)
Después de completar con éxito los mensajes de Main Mode, también NAT-T encapsula los mensajes de Quick Mode (IKE fase 1) con el puerto UDP 4500.
Protocolo NAT-T y ESP | Tráfico de datos
Después de completar con éxito la fase 2 de IKE, los datos están listos para cifrarse según las asociaciones de seguridad (SA) especificadas por el usuario y transmitirse a través de la ruta de transmisión utilizando el protocolo ESP (Encapsulating Security Payload).
NAT-T encapsula el tráfico de datos enviado con el puerto UDP 4500 en lugar de solo el protocolo ESP, ya que el paquete ESP no puede pasar a través de un dispositivo habilitado para PAT.
Conclusión
IPsec NAT-Traversal (NAT-T) es una solución esencial para garantizar la compatibilidad de VPN IPsec en entornos donde existe NAT, una condición común en redes modernas. Al encapsular los paquetes ESP dentro de UDP, NAT-T permite que el tráfico cifrado atraviese routers y firewalls sin perder integridad ni confidencialidad. Aunque introduce una mínima sobrecarga, su implementación mejora significativamente la interoperabilidad y fiabilidad de las conexiones VPN seguras en redes públicas y privadas.
Jovanny de Jesus