Use a rede hostonly . Você adiciona uma interface à sua configuração de rede para a sua virtualbox que age como um switch. Por padrão, deve adicionar vboxnet0
.
Na sua máquina, você precisa ativar o encaminhamento de ip4 no kernel:
sysctl -w net.ipv4.ip_forward=1
Isso deve ser suficiente para permitir o acesso à Internet para a VM. Você pode filtrar o tráfego usando iptables e a cadeia FORWARD se adicionar uma interface para cada VM que você pode filtrar por interface e restringir o tráfego entre as VMs. É a maneira mais flexível de fazer isso. E você pode evitar a ponte.
Usando o iptables, você pode encaminhar uma porta para a VM local:
iptables -t nat -A PREROUTING -i eth+ -p tcp --dport 2222 -j DNAT --to 10.10.10.100:22
Onde 10.10.10.100
é o endereço IP da sua VM na interface vboxnet0
que pode ser acessada de fora pela porta 2222
. Você pode configurar o IP manualmente ou usar dnsmasq
no host para atuar como um servidor DHCP.
Coloque um arquivo em /etc/dnsmasq.d/virtualbox
para sua VM:
dhcp-range=interface:vboxnet0,10.10.10.100,10.10.10.100,255.255.255.0,24h
Isso cuida da atribuição das informações de endereço IP e gateway + DNS à VM. Você também pode configurá-lo manualmente, nesse caso, o DNS e o endereço do gateway seriam 10.10.100.1
. Se você está familiarizado com a configuração de rede linux, você deve ser capaz de descobrir isso.