5.1 Introducción a NAT

Otro tema muy interesante es NAT. NAT significa traducción de direcciones de red y generalmente está presente en cada enrutador como un servicio. Entonces, ¿qué es y por qué es necesario?

NAT es un punto por el cual las redes locales se pueden conectar a redes globales, como Internet, por ejemplo.

Como ya sabes, en las redes locales, todas las computadoras (y otros dispositivos conectados a la red) tienen sus propias direcciones IP locales. Y para poder intercambiar datos con un servidor en Internet, es necesario que nuestra computadora pueda enviar una solicitud al servidor y el servidor pueda enviarnos una respuesta. ¿Y dónde debería enviar una respuesta si nuestra dirección IP es desconocida fuera de nuestra red local?

Imagina que estás escribiendo una carta en papel a Donald Trump. Trump es una figura pública, es el único: este es nuestro servidor público. E indicas a Masha como la dirección del remitente en la carta. Machacar mucho. ¿A qué Masha se le debe enviar la respuesta?

Así que le envías una carta a tu conocido en Washington, también figura pública, con instrucciones estrictas para enviársela a Trump. Su amigo recibe una carta, se la envía a Trump y le da su dirección en Washington como dirección del remitente.

Luego, tras recibir una respuesta de Trump, el conocido te la reenvía. Lo mismo con los paquetes IP...

Para permitir que un dispositivo con una dirección IPv4 privada acceda a dispositivos y recursos fuera de la red local, primero se debe cambiar la dirección privada a una dirección pública pública.

Simplemente NAT traduce direcciones privadas a públicas. Esto permite que un dispositivo con una dirección IP local acceda a recursos fuera de su red privada. NAT, combinado con direcciones IP locales, ha demostrado ser un método útil para mantener direcciones IPv4 públicas.

Hay 8 mil millones de personas en el mundo y ya hay muchos más dispositivos de red: teléfonos, computadoras portátiles, relojes inteligentes, servidores, cualquier dispositivo inteligente. Y solo hay 4 mil millones de direcciones IP. Solía ​​parecer mucho, pero con el rápido crecimiento de Internet, quedó claro para todos que esto no era suficiente.

Aquí NAT viene al rescate: una dirección IPv4 pública puede ser utilizada por cientos, incluso miles de dispositivos, cada uno de los cuales tiene una dirección IPv4 local. NAT tiene el beneficio adicional de agregar un grado de privacidad y seguridad a una red porque oculta las direcciones IPv4 internas de las redes externas.

5.2 Subredes en NAT

Las LAN suelen estar diseñadas con direcciones IP privadas. Estas son direcciones de subredes privadas 10.0.0.0/8y 172.16.0.0/12. 192.168.0.0/16Estas direcciones IP son utilizadas internamente por una organización o sitio para permitir que los dispositivos se comuniquen localmente, no se pueden enrutar en Internet.

Los enrutadores habilitados para NAT se pueden configurar con una o más direcciones IPv4 públicas válidas. Estas direcciones públicas se denominan grupo NAT.

Cuando un dispositivo en la red interna envía tráfico desde la red al exterior, el enrutador habilitado para NAT traduce la dirección IP interna del dispositivo a la dirección IP pública del conjunto de NAT. Para los dispositivos externos, todo el tráfico que entra y sale de la red parece tener una dirección IP pública.

Un enrutador NAT generalmente opera en el borde de una red Stub. Una red stub es un término de la teoría de redes: una red stub que tiene una conexión a una red vecina, una entrada y una salida de la red.

Cuando un dispositivo dentro de la red Stub quiere comunicarse con un dispositivo fuera de su red, el paquete se reenvía al enrutador y realiza un proceso NAT, traduciendo la dirección privada interna del dispositivo a una dirección pública, externa y enrutable.

5.3 Terminología NAT

Si profundiza en la teoría de las redes, entonces NAT es una red interna, que es un conjunto de subredes para traducir. La red externa se refiere a todas las demás redes.

Cuando se usa NAT, las direcciones IP tienen diferentes designaciones según se encuentren en una red privada o en una red pública (en Internet) y si el tráfico es entrante o saliente.

NAT incluye cuatro tipos de direcciones:

  • Dirección local interna (Dirección local interna);
  • Dirección global interna (Dirección global interna);
  • Fuera de la dirección local ;
  • Dirección global externa (Dirección global externa);

Al determinar qué tipo de dirección se está utilizando, es importante recordar que la terminología NAT siempre se aplica desde el punto de vista del dispositivo con la dirección traducida:

  • Dirección interna (Inside address) - dirección del dispositivo que es traducida por NAT;
  • Dirección externa : dirección del dispositivo de destino;
  • Una dirección local es cualquier dirección que aparece internamente en la red;
  • Una dirección global es cualquier dirección que aparece en el exterior de la red.

Veamos esto con un ejemplo de diagrama.

La computadora en la imagen de la izquierda tiene una dirección local interna ( local interna ) 192.168.1.5, y desde su punto de vista, el servidor web tiene una dirección externa ( externa208.141.17.4 ) . Cuando los paquetes de datos se envían desde la computadora a la dirección global del servidor web, la dirección local interna ( Inside local ) de la PC se traduce a 208.141.16.5( inside global ). La dirección del dispositivo externo generalmente no se traduce porque es una dirección IPv4 pública.

Vale la pena señalar que una computadora tiene, por así decirlo, dos direcciones: direcciones locales y globales, mientras que un servidor web tiene la misma dirección IP pública. Desde su punto de vista, el tráfico que se origina en la computadora proviene de la dirección global interna 208.141.16.5. Un enrutador NAT es el punto de separación entre las redes internas y externas, y entre las direcciones locales y globales.

Los términos inside y outside se combinan con los términos local y global para referirse a direcciones específicas. En la figura, el enrutador está configurado para proporcionar NAT y tiene un grupo de direcciones públicas para asignar a hosts internos.

5.4 Ruta del paquete

Si ya está cansado, vaya a la próxima lección. Si todavía estás interesado, bienvenido más abajo en el agujero de gusano.

La siguiente figura muestra cómo se envía el tráfico desde una computadora interna a un servidor web externo a través de un enrutador habilitado para NAT, se envía y se retransmite.

Subredes en NAT 3
tabla NAT del enrutador
ordenador personal Servidor web
Dentro de Global Local interior fuera del local fuera del mundo
208.141.17.4 192.168.1.5 208.141.16.5 208.141.16.5

Dirección local interna : la dirección de origen vista desde la red interna. En la figura, la dirección 192.168.1.5está asignada a la computadora; esta es su dirección local interna.

Dirección global interna: la dirección de origen vista desde la red externa. En la figura, cuando el tráfico de la computadora se envía al servidor web en 208.141.17.4, el enrutador traduce la dirección local interna (dirección local) a la dirección global interna (dirección global interna). En este caso, el enrutador cambia la dirección de origen IPv4 de 192.168.1.5a 208.141.16.5.

Dirección global externa: la dirección del destino vista desde la red externa. Esta es una dirección IP enrutable globalmente asignada a un host en Internet. En el diagrama, el servidor web está disponible en 208.141.17.4. La mayoría de las veces, las direcciones locales externas y globales externas son las mismas.

Dirección local externa: la dirección del destinatario vista desde la red interna. En este ejemplo, la computadora envía tráfico al servidor web en208.141.17.4

Ahora veamos la ruta completa del paquete. La computadora con la dirección 192.168.1.5está tratando de comunicarse con el servidor web 208.141.17.4. Cuando un paquete llega a un enrutador habilitado para NAT, lee la dirección IP de destino del paquete para determinar si el paquete cumple con los criterios especificados para la traducción. En este ejemplo, la dirección de origen coincide con los criterios y se traduce de 192.168.1.5(Dirección local interna) a 208.141.16.5(Dirección global interna).

El enrutador agrega esta asignación de dirección local a global a la tabla NAT y envía el paquete con la dirección de origen traducida al destino. El servidor web responde con un paquete dirigido a la dirección global interna de la PC ( 208.141.16.5).

El enrutador recibe un paquete con una dirección de destino 208.141.16.5y busca en la tabla NAT una entrada para esa asignación. Utiliza esta información y vuelve a traducir la dirección global interna ( 208.141.16.5) a la dirección local interna ( 192.168.1.5), el paquete se redirige hacia la PC.

5.5 Ventajas y desventajas de NAT

El servicio NAT es una solución muy poderosa que se usa en todas partes. NAT proporciona muchos beneficios que incluyen:

  • NAT mantiene un esquema de direccionamiento registrado, lo que proporciona una operación de LAN flexible. Con NAT, los hosts internos pueden compartir una dirección IP pública para todas las comunicaciones externas. Este tipo de configuración requiere muy pocas direcciones externas para admitir muchos hosts internos.
  • NAT aumenta la flexibilidad de las conexiones a Internet. Se pueden implementar varios grupos, grupos de copia de seguridad y grupos de equilibrio de carga para proporcionar conexiones de red pública fiables.
  • NAT proporciona consistencia para los esquemas de direccionamiento interno de la red. En una red que no usa direcciones IP privadas y NAT, cambiar el esquema general de direcciones IP requiere redirigir todos los hosts en la red existente. El costo del reenvío de host puede ser significativo. NAT permite que se mantenga el esquema de direccionamiento privado IPv4 existente, al mismo tiempo que permite cambiar fácilmente el nuevo esquema de direccionamiento público. Esto significa que una organización puede cambiar de proveedor y no necesita cambiar ninguno de sus clientes internos.
  • NAT proporciona seguridad en la red . Debido a que las redes privadas no anuncian sus direcciones o topología interna, siguen siendo razonablemente confiables cuando se usan junto con NAT para obtener acceso externo controlado. Sin embargo, debe comprender que NAT no reemplaza a los firewalls.

Pero NAT tiene algunas desventajas . El hecho de que los hosts en Internet parezcan estar hablando directamente con un dispositivo habilitado para NAT en lugar de con un host real dentro de la red privada crea una serie de problemas:

  • Una de las desventajas de usar NAT tiene que ver con el rendimiento de la red, especialmente para protocolos en tiempo real como VoIP. NAT aumenta los retrasos en la conmutación porque la traducción de cada dirección IP en los encabezados de los paquetes lleva tiempo.
  • Otra desventaja de usar NAT es que se pierde el direccionamiento de extremo a extremo. Muchos protocolos y aplicaciones de Internet se basan en el direccionamiento de extremo a extremo desde el origen hasta el destino. Algunas aplicaciones no funcionan con NAT. Las aplicaciones que usan direcciones físicas en lugar de un nombre de dominio calificado no pueden llegar a los destinos que se traducen a través de un enrutador NAT. A veces, esto se puede evitar implementando asignaciones NAT estáticas.
  • También se pierde el seguimiento de IPv4 de extremo a extremo. Es más difícil rastrear paquetes que experimentan múltiples cambios de dirección de paquetes en múltiples saltos NAT, lo que dificulta la resolución de problemas.
  • El uso de NAT también dificulta los protocolos de tunelización como IPsec porque NAT cambia los valores en los encabezados que interfieren con las comprobaciones de integridad realizadas por IPsec y otros protocolos de tunelización.
  • Los servicios que requieren que las conexiones TCP se inicien desde la red externa o los protocolos sin estado, como los que usan UDP, pueden fallar. Si el enrutador NAT no está configurado para admitir estos protocolos, los paquetes entrantes no pueden llegar a su destino.