Estou tentando simular um cliente por trás de um NAT usando o Virtual Box.
Eu tenho uma máquina host, digamos, com um endereço IP 130.0.0.1. Eu crio uma máquina virtual (vamos chamá-la de VM1) rodando o Ubuntu 12.04 com duas interfaces de rede.
eth0 - Bridged Adaptor (Let's say it gets an address 130.0.0.2)
eth1 - Host-only Adaptor (Let's say it gets an address 192.168.0.1)
Na VM1, eu limpo todas as regras de iptable usando:
iptables -F
iptables -t nat -F
iptables --delete-chain
iptables --table nat --delete-chain
Eu habilito o encaminhamento de pacotes pelo kernel usando o comando:
echo 1 > /proc/sys/net/ipv4/ip_forward
Eu crio novas regras usando o iptables:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE OR iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables -A FORWARD -i eth1 -j ACCEPT OR iptables --append FORWARD --in-interface eth1 -j ACCEPT
Eu configuro a interface eth1 da VM1 cuja / etc / network / interface possui as seguintes entradas:
auto lo
iface lo inet loopback
auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
E eu crio outra máquina virtual (vamos chamá-la de VM2) executando o Ubuntu 12.04 (adaptador somente para host). Eu configuro sua interface configurando as seguintes entradas na interface / etc / network /:
auto lo
iface lo inet loopback
address 192.168.0.2
netmask 255.255.255.0
gateway 192.168.0.1
Portanto, de acordo com essa configuração, a VM2 deve se comportar como um cliente por trás de um NAT (VM1) e estou tentando conectar-me às máquinas presentes na rede do host da VM2. Quando eu:
ping 130.0.0.2 or
ping 192.168.0.1
funciona. Mas quando tento:
ping 130.0.0.1 or
any other machine on that network
Eu não recebo resposta alguma. Alguém pode me deixar saber o que estou perdendo ou fazendo incorretamente aqui?
Tags networking virtualbox nat