Básicamente, me gustaría acceder a mi computadora host desde el invitado en VirtualBox. ¿Hay una dirección IP para mi host que pueda usar desde el invitado? ¿Se requieren pasos adicionales para configurar esto? Me gustaría acceder a los servicios Apache, FTP y SSH de mi host.
networking
virtualbox
virtualization
Naftuli Kay
fuente
fuente
Respuestas:
Esta respuesta es sobre una configuración de SO huésped en VirtualBox; solo necesita usar la dirección de la puerta de enlace de red en el SO huésped para conectarse al SO host desde un SO huésped.
En la configuración predeterminada de Vagrant, debería poder comunicarse con su host a través de la puerta de enlace predeterminada.
En los invitados basados en Windows, puede determinar fácilmente esta dirección IP ejecutando el comando:
Debería arrojar algo como esto:
En este ejemplo, el invitado puede llegar a la máquina host
10.0.2.2
.En invitados basados en Unix / Linux, use el comando:
Debería arrojar algo como esto:
En este ejemplo, el invitado puede llegar a la máquina host
192.168.1.1
.fuente
10.0.2.2
, y un nmap de esa IP falló. 192.168.33.1 parece ser la IP correcta. (Teníaconfig.vm.network :hostonly, "192.168.33.52"
en mi configuración.)netstat -rn
en CentOS 7.2, Docker 1.11 mostraba una172.17
dirección como mi puerta de enlace, pero esa IP no coincidía con mi host. Resulta que lo10.0.2.2
hizo.Acceder al servidor web de la computadora host desde el invitado es fácil. Esto se puede hacer fácilmente usando dos métodos. Primero haz lo siguiente
Si el valor es NAT , haga lo siguiente
La puerta de enlace predeterminada cuando configura Virtual box generalmente es el
10.0.2.2
valor predeterminado. Si no ha cambiado nada, esto funcionará. Pero si lo ha cambiado y la máquina invitada que está ejecutando es Windows, ejecute el siguiente comando y encuentre la puerta de enlace predeterminadaipconfig /all
Si está en Linux, Unix o Mac OS, ejecute el siguiente comando para obtenerlo
netstat -rn | grep 'default' | awk '{print $2}'
Vaya al navegador web y escriba esta puerta de enlace predeterminada y presione Entrar. Se puede acceder al servidor web.
ipconfig
y obtenga la dirección IPifconfig | grep 'inet'
y obtenga la dirección IPfuente
Otra forma de hacerlo es utilizar un tipo de red virtual "Host". Eso le brinda una interfaz en el SO huésped con una dirección en una subred local diferente de la (s) subred (es) del "mundo exterior" en la que se encuentra su máquina host. Para que esto funcione, debes asegurarte de algunas cosas:
Una vez que haya hecho esto, debería poder "ver" el host desde la VM a través del nombre que codificó en el archivo del host.
Por ejemplo, en mi host Ubuntu 11.04, obtengo una interfaz virtual "vboxnet0" en 192.168.56.1. Los adaptadores en las máquinas tienen algo como 192.168.56.101. No necesito ir en mi máquinas virtuales, pero supongo que eso sería posible a través de un cambio simétrico al archivo de host del host. añado
a los archivos host del sistema operativo invitado, y pueden (por ejemplo) ver el servidor web de mi máquina host en
Por supuesto, puede tener configurados los adaptadores puenteados y solo de host.
fuente
Puede crear carpetas compartidas en VirtualBox. Esto creará automáticamente un 'recurso compartido de red' dentro de Virtual Box para acceder a las carpetas en su sistema operativo host.
Aquí hay un paso a paso decente en un sistema operativo invitado Windows XP:
fuente
echo "GET /\r\n\r\n" | nc 192.168.100.100 80
(enviar una solicitud HTTP GET a mi máquina host desde el invitado).Aquí hay otra solución a este problema mediante el uso de una interfaz de red adicional y la configuración del tráfico destinado al host para enrutar a través de una interfaz adicional.
fuente