El propósito de IP Masquerading es permitir que las máquinas con direcciones IP privadas y no enrutables en su red accedan a Internet a través de la máquina que realiza el enmascaramiento. El tráfico de su red privada destinada a Internet debe manipularse para que las respuestas puedan enrutarse de nuevo a la máquina que realizó la solicitud. Para ello, el kernel debe modificar el fuente La dirección IP de cada paquete para que las respuestas se envíen de vuelta a él, en lugar de a la dirección IP privada que realizó la solicitud, que es imposible a través de Internet. Usos de linux Seguimiento de conexión (conntrack) para hacer un seguimiento de qué conexiones pertenecen a qué máquinas y redireccionar cada paquete de retorno en consecuencia. El tráfico que sale de su red privada es, por lo tanto, "enmascarado", ya que se originó en su máquina de puerta de enlace de Ubuntu. Este proceso se menciona en la documentación de Microsoft como Conexión compartida a Internet.
Instrucciones para IP Masquerading
Esto se puede lograr con una sola regla de iptables, que puede diferir ligeramente según la configuración de su red:
sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o ppp0 -j MASQUERADE
El comando anterior asume que su espacio de direcciones privadas es 192.168.0.0/16 y que su dispositivo de acceso a Internet es ppp0. La sintaxis se desglosa de la siguiente manera:
- -t nat - la regla es entrar en la tabla nat
- -A POSTROUTING - la regla debe ser anexada (-A) a la cadena POSTROUTING
- -s 192.168.0.0/16: la regla se aplica al tráfico que se origina en el espacio de direcciones especificado
- -o ppp0: la regla se aplica al tráfico programado para enrutarse a través del dispositivo de red especificado
- -J MASQUERADE: el tráfico que coincida con esta regla es "saltar" (-j) al destino MASQUERADE que se manipulará como se describe anteriormente
Cada cadena en la tabla de filtro (la tabla predeterminada, y donde ocurre la mayoría o todo el filtrado de paquetes) tiene un valor predeterminado política de ACEPTAR, pero si está creando un cortafuegos además de un dispositivo de puerta de enlace, es posible que haya establecido las políticas en DROP o RECHAZAR, en cuyo caso se debe permitir el tráfico enmascarado a través de la cadena FORWARD para que la regla anterior funcione:
sudo iptables -A FORWARD -s 192.168.0.0/16 -o ppp0 -j ACEPTAR sudo iptables -A FORWARD -d 192.168.0.0/16 -m estado --estado ESTABLECIDO, RELACIONADO -i ppp0 -j ACEPTAR
Los comandos anteriores permitirán que todas las conexiones de su red local a Internet y todo el tráfico relacionado con esas conexiones regresen a la máquina que las inició.
* Licencia
* Índice de la guía de Ubuntu Server