ROUTING - SNAT


NAT es el acrónimo de network address translation o traducción de direcciones de red y es un mecanismo que se usa ampliamente hoy en día, fundamentalmente porque permite compartir una dirección IP pública por muchos equipos y esto es imprescindible en muchas situaciones por la escasez de direcciones IPv4.

Existen diferentes tipos de NAT, dependiendo de si se cambia la dirección IP origen o la dirección IP destino del paquete que abre la conexión, incluso existe una extensión de NAT que permite modificar el puerto origen o destino. Estos tipos de variantes de NAT reciben diferentes nombres dependiendo de la implementación, aunque más que el nombre lo importante es saber las posibilidades de NAT y aquí presentamos los nombres más utilizados cuando se implementa NAT con iptables.

Iptables es el componente más conocido del proyecto netfilter y es una herramienta que funciona en el espacio de usuario y que permite definir reglas para el filtrado y la modificación de paquetes TCP/IP que pasen por cualquiera de las interfaces de red de un equipo.

SOURCE NAT
Este tipo de NAT es en el que se cambia la dirección IP de origen, es la situación más utilizada cuando estamos utilizando una dirección IP privada (RFC 1918) en una red local y establecemos una conexión con un equipo de Internet. Un equipo de la red (normalmente la puerta de enlace) se encarga de cambiar la dirección IP privada origen por la dirección IP pública, para que el equipo de Internet pueda contestar.
 
IP MASQUERADING
Este tipo de NAT normalmente es sinónimo de SNAT, pero iptables distingue dos casos:
  • SNAT: Cuando la dirección IP pública que sustituye a la IP origen es estática (SNAT también significa Static NAT).
  • MASQUERADE: Cuando la dirección IP pública que sustituye a la IP origen es dinámica, caso bastante habitual en conexiones a Internet domésticas.
TABLAS Y CADENAS
Hay tres tablas definidas en iptables que son filter, nat y mangle, que se encargan de diferentes tipos de procesos, aquí sólo trataremos de la tabla nat, por lo que cada vez que escribamos una instrucción comenzaremos con iptables -t nat.

La tabla nat está formada por tres cadenas:
  • PREROUTING: Permite modificar paquetes entrantes antes de que se tome una decisión de enrutamiento.
  • OUTPUT: Permite modificar paquetes generados por el propio equipo después de enrutarlos
  • POSTROUTING: Permite modificar paquetes justo antes de que salgan del equipo.
Para cada cadena se especifican reglas, para las que es fundamental el orden, ya que cuando un paquete encuentra una regla que lo define, aplica esa regla y no lee las siguientes.

SNAT (Source Network Address Translation)

SNAT, o Traducción de Dirección de Red de Origen, es una técnica utilizada en redes de computadoras para permitir que varias máquinas en una red privada compartan una única dirección IP pública para acceder a Internet. Este proceso implica cambiar la dirección IP de origen de los paquetes de red que salen de la red privada hacia una dirección IP pública única.

Funcionamiento:

1. Red Privada:
En una red privada, varias máquinas pueden tener direcciones IP locales (privadas), pero para acceder a recursos en Internet, necesitan compartir una única dirección IP pública.
Esto es común en entornos empresariales o domésticos donde múltiples dispositivos internos necesitan acceso a Internet, pero solo se dispone de una dirección IP pública.

2. SNAT en Acción:
Cuando una máquina interna envía un paquete a Internet, el router o servidor con SNAT cambia la dirección IP de origen del paquete por su propia dirección IP pública.
Esto permite que los recursos externos respondan al router o servidor, y luego el router o servidor reenvía la respuesta al dispositivo interno correcto en la red privada.

Aplicaciones y Utilidad:

1. Compartir Conexión a Internet:
SNAT es fundamental para compartir una única conexión a Internet con múltiples dispositivos en una red privada.

2. Conservación de Direcciones IP Públicas:
Al utilizar SNAT, se pueden conservar direcciones IP públicas, ya que múltiples dispositivos internos comparten una única dirección IP pública para las solicitudes salientes.

3. Seguridad:
SNAT proporciona cierto grado de seguridad al ocultar las direcciones IP privadas internas detrás de una única dirección IP pública, dificultando que los recursos externos accedan directamente a las máquinas internas.

4. Gestión del Tráfico:
Permite un mejor control y gestión del tráfico saliente al asignar una única dirección IP para toda la red privada.

SNAT es una técnica esencial en entornos de redes para permitir que múltiples dispositivos internos compartan una única dirección IP pública, facilitando el acceso a Internet y brindando ciertas ventajas en términos de seguridad y gestión del tráfico.

En la práctica de hoy os muestro a continuación aprendemos a configurar UBUNTU SERVER para que actúe como ROUTER, para que de esta manera nuestro equipo con Ubuntu Desktop pueda conectarse a internet a través de nuestro servidor. Para ello debemos configurar las máquinas en RED INTERNA en ambas máquinas y además configurar un adaptador extra en nuestro servidor en modo ADAPTADOR PUENTE para conectarnos a internet.




Comentarios

Entradas populares