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?

  1. Detección de NAT:

    • Durante el intercambio inicial IKE (fase 1).
    • Se comparan las IPs originales vs recibidas.
  1. 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?

Main Mode 1 y 2, se realiza la negociación de NAT-T

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.

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)

mensajes de Main Mode 3 y 4, se realiza NAT-DIscovery (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 RT-Site2 (10.12.0.5)

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

Mensaje de 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.

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, NAT-T encapsula los mensajes de Quick Mode (IKE fase 1) con el puerto UDP 4500 también

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.

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).

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