VirtualBox y OS X proporcionan varios métodos (sin NAT) para conectar su VM:
1. El "Adaptador puenteado" de VirtualBox:
Primero elimine bridge1 en la Terminal y use un "Adaptador puenteado" en lugar de vboxnet0 en su VM. Vaya a la configuración de red de la máquina virtual correspondiente - > Adaptador1 - > adjunto a: y cambie el tipo de lo que sea ahora al "Adaptador puenteado" y luego elija su interfaz Wi-Fi:
LaVMen0adjuntaaladaptadorpuenteadodebeconfigurarseconunaIPúnicaenelmismorangoderedquelaIPdelainterfazdelhost.
Ejemplo:
- Mishostsen1config:red:192.168.1.0/24IP:192.168.1.2gateway:192.168.1.1
- Laconfiguracióneth0delamáquinavirtual:red:192.168.1.0/24IP:unadirecciónIPúnicaygratuitaenelrango192.168.1.3-192.168.1.254gateway:192.168.1.1
SideseahacerquelaVMseaaccesibleaotrascomputadorasenlaWAN(internet)(porejemplo,unservidorweb),tienequereenviarlospuertosrespectivosenelenrutadoralaIPdelaVM.Todaslasotrascomputadorasenlamismared(192.168.1.0/24)puedenaccederalaVMdirectamenteensuLAN.
Finalmenteseveasí:
WAN<--->Router/Switch(&portfwtoVM)<---->Mac<------->VM192.168.1.1192.168.1.2192.168.1.130¦¦otherMac(s)192.168.1.3|4|5...
2.ElpuenteOSX
Supongoqueen1essuinterfazWi-Fiyeth0eselprimeradaptadorensuVM(Linux).Compruebaestoconifconfig
entuVM-host.Adapteloscomandosycambielasinterfacesacontinuaciónsiesnecesario.
Sinodeseautilizarel"Adaptador Bridged" pero vboxnet0 haga lo siguiente después de iniciar VirtualBox:
Conecte el adaptador 1 de VM al "Adaptador solo de host" y al "Nombre" vboxnet0.
En el host en la Terminal ingrese:
sudo sysctl -w net.inet.ip.forwarding=1
sudo ifconfig bridge1 destroy #if bridge1 still exists
sudo ifconfig en1 down
sudo ifconfig vboxnet0 down
sudo ifconfig bridge1 create
sudo ifconfig bridge1 addm vboxnet0 addm en1
sudo ifconfig bridge1 192.168.1.2 netmask 255.255.255.0 up
En la VM (Linux), debe configurar una dirección IP y una ruta predeterminada:
sudo ipconfig eth0 192.168.56.101 netmask 255.255.255.0 arp
sudo route add default gw 192.168.56.1
Un "Administrador de red" configurado podría interferir con esas configuraciones.
En las distintas Mac de su red, debe configurar una ruta estática adicional:
sudo route -n add -net 192.168.56.0/24 192.168.1.2
En el enrutador, debe reenviar los puertos a la VM y agregar una ruta estática a 192.168.56.0/24 para hacer que la VM sea accesible para otras computadoras en la WAN (internet).
Finalmente se ve así:
WAN <---> Router/Switch (& port fw to VM & static route to 192.168.56.0/24) <-----> Mac <----------------------> VM
192.168.1.1 192.168.1.2|192.168.56.1 192.168.56.101 (& default gw or static route to 192.168.1.0/24)
¦
¦
other Mac(s)
192.168.1.3|4|5... (& static route to 192.168.56.0/24)
El puente y las diversas rutas (excepto las del enrutador y la puerta de enlace predeterminada de la máquina virtual) no sobreviven al reinicio.
Para revertir todos los cambios:
Para eliminar bridge1 en el host, haga lo siguiente:
sudo ifconfig bridge1 down
sudo ifconfig bridge1 deletem en1 deletem vboxnet0
sudo ifconfig bridge1 destroy
Para deshabilitar el reenvío en el host, haga lo siguiente:
sudo sysctl -w net.inet.ip.forwarding=0
Para eliminar rutas estáticas en la Mac ingrese:
sudo route -n delete -net 192.168.56.0/24 192.168.1.2
Elimine la ruta estática en el enrutador.
Como resultado, se podría decir que es mucho más fácil y mucho más cómodo utilizar el método 1.