IP Masquerade también se conoce como Network Address Translation (NAT) y Network Connection Sharing algunos otros sistemas operativos populares. Básicamente es un método para permitir que una computadora que no tiene una dirección IP pública de Internet se comunique con otras computadoras en Internet con la ayuda de otra computadora que se encuentre entre ella e Internet.
Como sabe, las direcciones IP se utilizan en Internet para identificar máquinas. Dado un paquete con una dirección IP, cada enrutador que conforma Internet sabe dónde enviar ese paquete para llevarlo a su destino. Ahora, también hay algunos rangos de direcciones IP que se han reservado para uso privado dentro de las redes de área local y otras redes que no están conectadas directamente a Internet. Se garantiza que estas direcciones privadas no se utilizarán en Internet pública.
Esto causa problemas para las máquinas que están conectadas a redes privadas que usan direcciones IP privadas, ya que no pueden conectarse directamente a Internet. No tienen una dirección IP que se pueda usar en Internet pública. IP Masquerade resuelve este problema permitiendo que una máquina con una dirección IP privada se comunique con Internet, al mismo tiempo que modifica los paquetes de la máquina para usar una dirección IP pública válida en lugar de la dirección IP privada original. Los paquetes que regresan de Internet se modifican nuevamente para usar la dirección IP original antes de llegar a la máquina IP privada.
Tenga en cuenta que esto no se limita a la mascarada de red de Internet / NAT se puede utilizar para enrutar el tráfico de una red a otra, digamos 10.0.0.0/24 y 192.168.0.0/24
La regla de enmascaramiento de iptables se puede reemplazar con la regla SNAT
iptables -t nat -A POSTROUTING -o eth2 -s 10.0.0.0/24 -j MASQUERADE
=
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth2 -j SNAT --to-source 192.168.1.2
# supposing eth2 assigned ip is 192.168.1.2
Tanto masquerade como snat requieren ip_forward habilitado en el nivel del núcleo con echo "1" > /proc/sys/net/ipv4/ip_forward
o permanentemente editando el archivo de configuración nano /etc/sysctl.conf
.
IP Forward hace que la máquina actúe como un enrutador y, por lo tanto, redirija / reenvíe los paquetes desde toda la interfaz activa lógicamente por la red objetivo (local / net / other / etc) o siguiendo la tabla de rutas. Tenga en cuenta que habilitar ip_forward puede presentar un importante riesgo de seguridad, si ip_forward no se puede evitar, debe supervisarse / asegurarse mediante iptables / reglas de ruta adicionales.