¿Cómo puedo acceder a Apache (en la huésped de VirtualBox) desde el host?

132

Instalé Apache en una máquina virtual de Ubuntu. Cuando voy al invitado y cargo Firefox, puedo ver que Apache funciona bien cuando busco el host local.

Me gustaría acceder a esta misma página a través del host. Intenté usar la dirección IP del invitado pero no aparece nada.

Idealmente, me encantaría configurar mi Windows 7 (host) para solicitar http://guestserver.com del servidor Apache en el invitado. ¿Cómo puedo hacer esto?

    
pregunta urok93 07.07.2011 - 12:27

9 respuestas

145

Si necesita otras máquinas en su red física para poder llegar a su VM (o si la VM necesita acceso a Internet), use una red en puente. De lo contrario, adhiérase a la red de solo host.

  1. Detenga su VM y abra su configuración en el Administrador de VirtualBox (OSE)
  2. Vaya a la pestaña Red
  3. Seleccione el modo de red a su elección (red con puente o solo host) (en el ejemplo siguiente, estoy usando sólo host)

    Si desea utilizar una red en puente, debe seleccionar el adaptador de red correcto en Nombre . Para las conexiones por cable, debe seleccionar algo llamado eth0 . Las conexiones inalámbricas suelen llamarse wlan0 (los números pueden variar)

  4. Guarde la configuración
  5. Inicie la máquina virtual de Ubuntu
  6. Cuando esté activo, puede recopilar la dirección IP ejecutando:

    ifconfig | grep addr
    

    En la salida siguiente, 192.168.56.101 es la dirección IP que se puede usar en su sistema host Win7 para acceder a su máquina virtual:

    eth0  Link encap:Ethernet  HWaddr 08:00:27:70:27:fe  
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe7b:25fe/64 Scope:Link
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
    
  7. En su sistema host de Windows, edite C:\Windows\System32\drivers\etc\hosts como administrador y agregue una línea:

    192.168.56.101   guestserver.com
    

    Si tiene un sistema host Ubuntu, edite /etc/hosts utilizando sudo nano /etc/hosts

  8. ¡Beneficio!
respondido por el Lekensteyn 07.07.2011 - 12:58
12

En mi caso, tengo un enrutador que asigna una IP estática a mi PC Host.

  1. Configure el adaptador de red como Bridge:

    Configuración & gt; Red & gt; Adaptador 1 ( Habilitar adaptador de red ) & gt; Adjunto a: ( Bridge Adaptor ) & gt; OK

  2. Iniciar la máquina virtual & gt; inicie sesión

  3. Cambie la dirección IP de la VirtualMachine de dinámica a estática

    sudo nano / etc / network / interfaces

  4. En La interfaz de red primaria, cambie la palabra dhcp a static e ingrese su nueva IP estática o comente la línea y agregue una nueva

:

#iface eth0 inet dhcp
iface eth0 inet static
        address 192.168.10.110
        netmask 255.255.255.0
        gateway 192.168.10.1
        network 192.168.10.0
        broadcast 192.168.10.255

Observe que mi enrutador funciona en xxx.xxx. 10 .x y el tuyo podría estar en xxx.xxx. 0 .x o xxx.xxx. 1 .x o alguna otra cosa.

Después de hacer eso, puede tener conexión a Internet en el host y en la máquina invitada, y escribir esa IP estática en su navegador web para verificar su servidor apache.

    
respondido por el Nuc134rB0t 30.06.2012 - 01:04
7

En lugar de intentar configurar los adaptadores a Adaptador de red con puente o solo host, puede intentar el reenvío de puertos bajo Firewall / Otros puertos, con su puerto sin establecer conexiones tcp y udp.

    
respondido por el sp123 03.10.2014 - 17:27
4

La respuesta aceptada no funcionó para mí (instalé virutalbox dentro de ubuntu 12.04 LTSy dentro de virtualbox instalé ubuntu 14.04 LTS Server). Acabo de cambiar las configuraciones de red para Adapter1 y Adapter2, es decir, configurar Adapter1 para "bridge-networing" y Adapter2 para "NAT" y comenzó a funcionar.

    
respondido por el Gaurav Pandey 22.06.2014 - 12:34
3

Si no puedes conectarte por IP, no es probable que tengas ningún éxito con los nombres de DNS en una instalación de apache predeterminada.

compruebe la configuración de red del host virtual, siempre la conecto a la que se puede acceder a través de toda la red.

    
respondido por el PvdL 07.07.2011 - 12:47
2

En el modo de puente, si su host usa una dirección IP estática, debe configurar manualmente su IP huésped en el mismo rango que la IP del host. De lo contrario, el huésped no se asignará automáticamente con una dirección IP válida. HTH.

    
respondido por el platinor 08.02.2012 - 06:47
2

Si solo necesita un puerto específico (Digamos si está ejecutando una aplicación web como Jetty o Tomcat) solo haga lo siguiente:

Configuración - & gt; Red - & gt; Configure uno de los adaptadores como NAT - & gt; Presiona 'Reenvío de puertos' - & gt; Configure el host y el puerto de invitado correspondientes.

Una vez que guardas, puedes ir desde tu máquina local a localhost: hostport y se te redirigirá al puerto relevante del cuadro virtual y listo.

    
respondido por el StationaryTraveller 01.08.2017 - 14:25
1

La respuesta de Lekensteyn es correcta. Pero si se encuentra en un entorno corporativo, es posible que tenga que deshabilitar el servidor proxy para la dirección IP de su invitado. Por ejemplo, si está utilizando Mozilla Firefox en su máquina Host e intenta acceder a 192.168.56.101/ en el invitado, debe ir a Herramientas de Firefox- & gt; Opciones- & gt; Avanzado- & gt; Configuración de red & gt; y use "Sin Proxy" o "Sin Proxy para - & gt; 192.168.56.101".

    
respondido por el SpaceRook 27.11.2012 - 03:00
1

Si necesita acceder a un invitado que obtiene una IP diferente debido al uso de DHCP, le sugiero que acceda a través de su nombre de host. Sin embargo, acceder a través de un nombre de host cuando el servidor es Windows podría requerir una herramienta adicional.

El siguiente texto se copió de mi propia respuesta en superuser.com. :

Te sugiero que uses DNS de multidifusión para solucionarlo.

Ubuntu está usando esto de manera predeterminada a través de Avahi .

El host de Windows necesita un Avahi-client para que descubra otros servicios de Avahi. Si su anfitrión ya usa algún software de Apple, probablemente ya esté allí a través de un servicio llamado Bonjour. Sin embargo, si aún no está instalado, puede descargar una versión pequeña de Bonjour aquí: Bonjour Print Services . Después de la instalación, debe poder acceder a su invitado a través de .local.

Nota: El sistema mDNS parece usar el postfijo local de forma predeterminada. Entonces, si su nombre de host es "dev.myapp.com", entonces el nombre de host real será "dev.myapp.com.local".

    
respondido por el Spiralis 29.01.2013 - 23:45

Lea otras preguntas en las etiquetas