Saltar al contenido
Guías

Qué es NAT: cómo traduce direcciones tu router y por qué no es un cortafuegos

NAT es lo que permite que todos los equipos de una oficina salgan a internet con una sola dirección pública. Muchos lo toman por una medida de seguridad, pero la guía del NIST lo deja claro: es una técnica de encaminamiento y no sustituye a un cortafuegos.

Adaptador de red colgado de una pared junto a un rollo de cable azulFoto: Nothing Ahead, en Pexels
Redacción de Firewalls Hardware · Actualizado el · 4 min de lectura
En este artículo

NAT son las siglas de Network Address Translation, traducción de direcciones de red. El RFC 2663 lo define como un método para hacer corresponder direcciones IP de un ámbito con las de otro. En la práctica, es el motivo por el que los equipos de tu red usan direcciones que no existen en internet y aun así navegan.

Cómo funciona

Tu red interna usa direcciones privadas. El RFC 1918 reserva tres rangos para ello:

  • 10.0.0.0 a 10.255.255.255
  • 172.16.0.0 a 172.31.255.255
  • 192.168.0.0 a 192.168.255.255

Estas direcciones se repiten en millones de redes, así que no sirven para hablar con internet. Cuando un equipo sale, el router o el cortafuegos cambia su dirección privada por la pública y apunta el cambio en una tabla. Cuando vuelve la respuesta, consulta la tabla y la entrega al equipo correcto.

Ejemplo de una tabla de NAT (las direcciones son inventadas)
Equipo internoSale a internet como
192.168.1.20, puerto 50000203.0.113.5, puerto 40001
192.168.1.21, puerto 50000203.0.113.5, puerto 40002

Los dos equipos comparten dirección pública. Lo que los distingue es el puerto, y por eso no se confunden las respuestas.

Los tipos de NAT

Variantes de NAT
TipoQué traducePara qué se usa
NAT básicoSolo la dirección IPCuando se dispone de un bloque de direcciones públicas
NAPT, o PATLa dirección y el puertoCompartir una dirección pública entre muchos equipos: es lo habitual en una oficina
Correspondencia estática o reenvío de puertosUna dirección o un puerto fijos hacia un equipo internoPublicar un servicio, como un servidor web o una VPN
CGNATLo mismo que NAPT, pero en el operadorQue varios clientes compartan una dirección pública

El RFC 3022 describe los dos primeros como «NAT tradicional», en el que las sesiones salen de la red privada, y admite las de sentido contrario como excepción, con correspondencias estáticas para equipos concretos. Eso es lo que hace el reenvío de puertos.

Los nombres cambian de un fabricante a otro: SNAT o enmascaramiento para la salida, DNAT o «servidor virtual» para la entrada. Conviene mirar lo que hace cada opción, no cómo se llama.

Por qué NAT no es un cortafuegos

La confusión viene de un efecto secundario. Como no hay entrada en la tabla hasta que alguien de dentro sale, un equipo de fuera no puede iniciar una conexión con uno interno. El propio RFC 2663 reconoce que mucha gente ve el NAT como un filtro de un solo sentido.

La guía de cortafuegos del NIST es más tajante:

  • Dice que NAT es una tecnología de encaminamiento, aunque a veces se tome por una de cortafuegos.
  • Dice que no forma parte de las funciones de seguridad de un cortafuegos, por mucho que la idea esté extendida.
  • Y explica que el beneficio de que nadie pueda entrar desde fuera se logra igual con un cortafuegos con estado, sin los problemas que NAT causa a algunos protocolos.

Lo que NAT no hace, y un cortafuegos sí, es decidir con reglas qué sale y qué entra, ni registrar lo que ocurre. Además, no sirve de nada ante lo que ya empieza dentro: un equipo infectado que conecta hacia afuera pasa por el NAT como cualquier otro.

El reenvío de puertos deja un servicio interno al alcance de internet. Si no hay más remedio que publicarlo, lo normal es aislarlo en una DMZ para que un fallo en ese equipo no dé paso al resto de la red.

Los problemas que da

  • VPN IPsec: NAT y la autenticación de IPsec chocan, porque cambiar direcciones altera los paquetes. Para eso existe NAT-Traversal: el RFC 3947 detecta si hay NAT en el camino y pasa el tráfico al puerto UDP 4500. Si tu VPN no se levanta, es de lo primero que hay que mirar.
  • Sesiones que se cortan: la tabla no guarda las entradas para siempre. El RFC 4787 pide que una correspondencia UDP no caduque en menos de dos minutos, con alguna excepción, y ese tiempo puede ser configurable.
  • Averiguar quién fue: el RFC 3022 avisa de que ocultar las direcciones internas también complica investigar problemas, incluidas las infracciones de seguridad. Si quieres saber qué equipo hizo algo, necesitas guardar los registros del cortafuegos.

CGNAT: cuando el NAT lo pone tu operador

Con CGNAT (Carrier-Grade NAT), el operador comparte una dirección pública entre varios clientes. Tu router queda detrás de otro NAT que no controlas, y eso tiene una consecuencia práctica: el reenvío de puertos de tu router deja de bastar, porque desde internet nadie llega hasta él.

Para esto, el RFC 6598 reservó el rango 100.64.0.0/10, pensado para conectar los equipos CGN del operador con el router del cliente. Si la dirección WAN de tu router empieza por 100.64 a 100.127, es muy probable que estés en ese caso. Si necesitas recibir conexiones desde fuera, por ejemplo una VPN entre sedes, pregunta a tu operador si puede darte una dirección pública.

Qué mirar en tu cortafuegos

Esta lista es criterio de esta web, no de ninguna de las normas citadas:

  1. Repasa los reenvíos de puertos. Cada uno es una puerta abierta: quita los que ya no se usen y limita el origen de los que queden, si puedes.
  2. No des por hecho que el NAT te protege. Comprueba que hay reglas de cortafuegos, y también de salida.
  3. Si tienes varias sedes, evita que dos usen el mismo rango privado. Con el típico 192.168.1.0/24 en ambas, enlazarlas por VPN se complica.
  4. Guarda los registros, con el tiempo suficiente para poder relacionar una conexión con el equipo que la hizo.

Preguntas frecuentes

¿NAT protege mi red?

No es esa su función. La guía de cortafuegos del NIST explica que NAT no forma parte de la seguridad de un cortafuegos: impedir que alguien de fuera inicie una conexión se consigue igual con un cortafuegos con estado, y sin los problemas que NAT da a algunos protocolos.

¿Qué diferencia hay entre NAT y PAT?

El NAT básico traduce solo direcciones IP. NAPT, que muchos fabricantes llaman PAT, traduce también el puerto, y eso permite que muchos equipos compartan una sola dirección pública.

¿Cómo sé si estoy detrás de CGNAT?

Una señal es que la dirección WAN de tu router esté en el rango 100.64.0.0/10, reservado para conectar los equipos de CGNAT del operador con el router del cliente. También puede estar detrás con otras direcciones, así que en caso de duda pregunta al operador.

Fuentes

Te puede interesar