Mi host es Ubuntu 12.04 y el invitado es Debian squeeze (servidor LAMP). Quiero permitir que el anfitrión conecte al invitado. y permitir que el huésped se conecte a Internet. El huésped no debe ser habilitado desde el exterior. Esa es la razón por la que no uso el puente de red. Quiero configurar una IP estática para el host. Seguíeste tutorial.
Así que seguí estos pasos pero no puedo conectarme ssh
del anfitrión al invitado. No puedo llamar al servidor a través del navegador. ping
funciona sin embargo!
Creé un adaptador de red virtual solo para host ( vboxnet0
) con la siguiente configuración:
IPv4-Adress: 192.168.56.1
IPv4-Netmask: 255.255.255.0
ifconfig
en Ubuntu host muestra esto:
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)
En el invitado de Debian squeeze, /etc/network/interfaces
se ve así:
# 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
Ya intenté cambiar eth1
a eth0
sin resultado.
En la configuración de VirtualBox, el modo promiscuo permite que las máquinas virtuales y el host se conecten.
He llegado al límite de mis conocimientos.
la salida de:
netstat --inet --inet6 -ln | grep :22
no es nada.
la salida de:
sudo iptables -L INPUT -nv
es:
Chain INPUT (policy ACCEPT 166 packets, 30786 bytes)
pkts bytes target prot opt in out source destination
Respuesta1
No debe utilizar la misma dirección IP en su invitado (como la de la interfaz del host). Si configura vboxnet0 en el host con la dirección IP 192.168.56.1, entonces en su invitado debería usar 192.168.56.2, por ejemplo. La puerta de enlace para su invitado debe ser la IP del anfitrión (en su caso 192.168.56.1).
Esto debería hacer la conexión de host<->invitado. Si desea que su invitado también tenga Internet, debe enmascarar su IP (o la red) en su anfitrión.
iptables -t nat -I POSTROUTING -s 192.168.56.0/24 -j MASQUERADE
sysctl net.ipv4.ip_forward=1
Es posible que deba configurar la política predeterminada para reenviar o habilitar su red enmascarada específicamente:
iptables -P FORWARD ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
nota: Puede ejecutar estas líneas con root para permitir el acceso a Internet a su invitado. Pero estas líneas probablemente deberían ir a la configuración del firewall de su host. (es decir, ufw). El archivo de configuración sysctl es: /etc/sysctl.conf, puede configurar ip_forward allí, si lo desea siempre habilitado.