Nuestra intención es hacer que una máquina virtual con dos tarjetas de red, cada una conectada a un segmento de red diferente, redirija el tráfico de los equipos de un segmento de red hacia el otro.
Por defecto, la máquina sólo acepta los paquetes que vayan destinados a la dirección de la/s tarjeta/s de red de esta misma, ignorando los demás paquetes que no le correspondan. Sin embargo, lo que a nosotros nos interesa es que todos los paquetes que escuche esta máquina sean encaminados de nuevo a su destino final.
Para lograr algo así es necesario cambiar algunos parámetros que vienen por defecto en nuestra máquina virtual.
Primeramente, abriremos el terminal de nuestra máquina virtual y escribiremos el siguiente comando:
sudo nano /etc/sysctl.conf
al tomar la acción como administrador, será necesario introducir la contraseña de este mismo.
Lo que obtenemos tras insertar el comando es el archivo sysctl.conf, del cual será necesario eliminar el símbolo "#" que le precede a "net.ipv4.ip_forward=1"
Tras esto, sólo nos queda ejecutar el comando "sudo sysctl -p" para tener activado el forwarding.
Una vez activado el forwarding, procederemos a activar el NAT para que enmascare las direcciones de la red interna. En este caso lo haremos con el siguiente comando:
sudo iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o (identificador de nuestra interfaz externa, en este caso "eth2") -j MASQUERADE
Y para guardar los cambios reiniciaremos la red con el siguiente comando:
sudo /etc/init.d/networking restart
Con esto ya lo tendríamos todo preparado para que nuestra red interna pueda comunicarse con el exterior.