Adaptador Virtualbox NAT + somente host

Adaptador Virtualbox NAT + somente host

Meu host é o Ubuntu 12.04 e o convidado é um Debian squeeze (servidor LAMP). Quero permitir que o host conecte o convidado. e permitir que o convidado se conecte à internet. O convidado não deve ser habilitado de fora. Essa é a razão pela qual não uso ponte de rede. Quero configurar um IP estático para o host. eu seguieste tutorial.

Então, executei essas etapas, mas não consigo me conectar sshdo host para o convidado. Não consigo ligar para o servidor via navegador. pingfunciona no entanto!

Criei um adaptador de rede somente host virtual ( vboxnet0) com as seguintes configurações:

IPv4-Adress: 192.168.56.1
IPv4-Netmask: 255.255.255.0

ifconfigno host do Ubuntu mostra isso:

eth0      Link encap:Ethernet  Hardware Adresse XX:XX:XX:XX:XX:XX  
          inet Adresse:192.168.2.100  Bcast:192.168.2.255  Maske:255.255.255.0
          inet6-Adresse: XXXX:XXX:XXXX:XXXX:X:X/XX Gültigkeitsbereich:Global


vboxnet0  Link encap:Ethernet  Hardware Adresse XX:XX:XX:XX:XX:XX  
          inet Adresse:192.168.56.1  Bcast:192.168.56.255  Maske:255.255.255.0
          inet6-Adresse: XXXX:XXX:XXXX:XXXX:X:X/XX Gültigkeitsbereich:Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metrik:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10069 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:1000 
          RX-Bytes:0 (0.0 B)  TX-Bytes:1539501 (1.5 MB)

No convidado do Debian squeeze, /etc/network/interfacesfica assim:

 # The host-only network interface
   auto eth1
   iface eth1 inet static
   address 192.168.56.1
   netmask 255.255.255.0
   network 192.168.56.0
   broadcast 192.168.56.255

Já tentei mudar eth1para eth0sem resultado.

Nas configurações do VirtualBox, o modo promíscuo permite que VMs e Host se conectem.

Cheguei ao limite do meu conhecimento.

a saída de:

netstat --inet --inet6 -ln | grep :22

é nada.

a saída de:

sudo iptables -L INPUT -nv

é:

 Chain INPUT (policy ACCEPT 166 packets, 30786 bytes)
  pkts bytes target     prot opt in     out     source               destination 

Responder1

Você não deve usar o mesmo endereço IP no seu convidado (como aquele na interface do host). Se você configurar vboxnet0 no host para o endereço IP 192.168.56.1, então no seu convidado você deverá usar 192.168.56.2, por exemplo. O gateway do seu convidado deve ser o IP do host (no seu caso 192.168.56.1).

Isso deve fazer a conexão host<->guest. Se você deseja que seu convidado também tenha internet, você deve mascarar seu IP (ou a rede) em seu host.

iptables -t nat -I POSTROUTING -s 192.168.56.0/24 -j MASQUERADE
sysctl net.ipv4.ip_forward=1

talvez seja necessário definir a política padrão para encaminhar ou ativar especificamente sua rede mascarada:

iptables -P FORWARD ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

nota: Você pode executar essas linhas com root, para permitir o acesso à Internet ao seu convidado. Porém, essas linhas provavelmente devem ir para a configuração do firewall do seu host. (ou seja, ufw). O arquivo de configuração do sysctl é: /etc/sysctl.conf, você pode definir ip_forward lá, se quiser que ele esteja sempre habilitado.

informação relacionada