Tengo un servidor de prueba / desarrollo local (HTTP, por supuesto), escuchando el puerto 8000.
Estoy trabajando en Linux, así que para probar la página en Internet Explorer 6, 7, 8, etc. Ejecuto una máquina virtual usando VirtualBox; También necesito ver cómo se ve en Firefox en un entorno Windows (las fuentes, por ejemplo, son diferentes).
En mi máquina real, abro el sitio web simplemente usando la URL http://localhost:8000
, ¿cómo abordo este host local desde la máquina virtual?
En este momento, mi solución es usar la dirección IP. ¿Alguna idea mejor?
Respuestas:
Google buscó esto: http://data.agaric.com/localhost-from-virtualbox-xp-install-ubuntu
Sugiere usar IP:
http://10.0.2.2
y funcionó para mí.Entonces, edité el archivo de hosts
C:\windows\system32\drivers\etc\hosts
, y agregué esta entrada:Si está probando en IE8, recuerde poner
http://
en la barra de direcciones. Simplemente poner la ip directamente no funcionará.Por ejemplo:
fuente
Attached to
configuración de Red VirtualBox deBridged Adapter
aNAT
para que esto funcione para mí.localhost
no10.0.2.2
debido a alguna autenticación de mierda que quiere localhost como la dirección :(Mac OS
Estoy ejecutando Virtual Box en macOS (anteriormente OS X), usando Virtual Box para probar IE en Windows, etc.
Vaya a IE en Virtual Box y acceda a
localhost
través dehttp://10.0.2.2
forlocalhost
ohttp://10.0.2.2:3000
forlocalhost:3000
.Mantuve la configuración de red como NAT, sin necesidad de puente como se sugirió anteriormente en mi caso. No es necesario editar ningún archivo de configuración.
fuente
Para habilitar esto en OSX tuve que hacer lo siguiente:
VirtualBox Preferences -> Network -> Host-only Networks ->
hacer clic en el ícono "+". Haga clic en Aceptar."Settings" icon -> Network -> Adapter 2 ->
menú desplegable "Conectado a:", seleccione "Adaptador solo de host" y su red (vboxnet0
) debería aparecer a continuación de forma predeterminada. Haga clic en Aceptar.http://10.0.2.2/
Puede consultarlo
localhost
y acceder a otros sitios alojados localmente agregando sus referencias al archivo de hosts (C:\windows\system32\drivers\etc\hosts
) de la siguiente manera:fuente
IPv4 Address
(por ejemplo192.168.56.1
). Luego, una vez que inicie la VM, abra su navegador y vaya ahttp://192.168.56.1:3000
Lo más probable es que tenga la red de su máquina virtual configurada en NAT. Si configura su red en Bridged, debería poder acceder a su máquina host por su nombre de host. Por ejemplo, si su nombre de host es "jsmith-Precision-7510" y desea abrir http: // localhost: 3000 / , podrá ver esa página en http: // jsmith-Precision-7510: 3000 / .
Para encontrar su nombre de host, abra una terminal / consola y luego ejecute el comando
hostname
. Su nombre de host aparecerá en la siguiente línea.Consulte la documentación de VirtualBox para obtener instrucciones sobre cómo establecer sus configuraciones de red en Bridged.
fuente
whatever.local
menos que instale Bonjour.Tuve que ir a virtualbox y cambiar la configuración de mi red a 'NAT'. Después de eso, pude
localhost
ejecutar en mi máquina host desde mi emulador en virtualbox a través dehttp://10.0.2.2:3000
fuente
http://10.0.2.2
exactamente como lo describe @Pytth aquí.Si tiene un adaptador conectado a NAT , hoy en día es una solución mejor y más elegante para configurar el reenvío de puertos a los puertos locales.
Settings
>Network
>Adapter
>Advanced
>Port forwarding
Simplemente inserte una nueva regla y establezca
Host port
yGuest port
en80
(para http) o22
(para ssh), y así sucesivamente.Entonces puede acceder a esa máquina ingresando solo
http://localhost
También es posible que desee cambiar NAT al modo transparente.
fuente
Descubrí que
10.0.2.2:<port>
funciona, pero solo si el Modo Promiscuo está configurado correctamente. Después de instalar mi VM, fui a Configuración> Red> Adaptador 1.NAT está configurado de manera predeterminada y el menú desplegable Modo promiscuo está deshabilitado. Cambié de NAT a Adaptador en puente, que habilitó el menú desplegable Modo promiscuo, y luego cambié el valor de "Denegar" a "Permitir máquinas virtuales". Luego volví a NAT, que deshabilitó el Modo Promiscuo nuevamente, pero retuvo el nuevo valor.
Después de solo este cambio, pude iniciar mi VM y ver mis máquinas host
localhost:<port>
en mi VM en10.0.2.2:<port>
.fuente
No poder redirigir las solicitudes a localhost en la VM al host local del host ahora está integrado en Windows ( https://tools.ietf.org/html/rfc6761#section-6.3 ), incluidas las VM disponibles en https: //developer.microsoft.com/en-us/microsoft-edge/tools/vms/
Por razones de seguridad, Microsoft ahora evita las entradas de archivos de host para anular la dirección de localhost a otra cosa que no sea la dirección de bucle invertido :: 1. Entonces, agregue una línea al archivo host de la VM, como
será ignorado
Hay dos formas (que yo sepa) de anular esto:
1) use NETSH para portproxy al host
(donde 10.0.2.2 es la puerta de enlace predeterminada en la VM y 8000 es el puerto que desea resolver en el host).
2) Configure IIS para realizar el enrutamiento de solicitud de aplicación y luego reescriba las solicitudes de localhost: port al hostIP: port
https://docs.microsoft.com/en-us/iis/extensions/configuring-application-request-routing-arr/creating-a-forward-proxy-using-application-request-routing
fuente
netsh
fue lo que me ayudó, probé todo lo que encontré en la red, pero no tuve éxito. Esto permitirá acceder<protocol>://localhost:<port>
, en lugar de acceder directamente por IP. Esta debería ser la respuesta aceptada para Windows 10.Mac OS
Si desea configurar un entorno de Windows con Virtualbox en una Mac, simplemente use la configuración NAT predeterminada en el adaptador, y en su VM de Windows, vaya al archivo hosts y agregue lo siguiente:
A diferencia de las respuestas anteriores, es importante incluir ambas líneas, de lo contrario no funcionará.
fuente
Debe editar su archivo de hosts en su máquina virtual de Windows de la misma manera que lo hace para su máquina de host local:
C: \ WINDOWS \ system32 \ drivers \ etc \ hosts
Y vincule sus hosts virtuales a 10.0.2.2, si solo está usando localhost, reemplace
127.0.0.1 localhost con 10.0.2.2 localhost
Por ejemplo:
Esto le dice a su máquina virtual que apunte a su máquina local para esos nombres de dominio.
fuente
No necesita cambiar el archivo de hosts ni ninguna configuración de Virtual Box. Mantenga la configuración en NAT. Vaya a su instancia de Windows y ejecute "cmd" o abra cmd.exe. Ejecute el comando "ipconfig" y obtenga la dirección IP de la puerta de enlace predeterminada . Examine http://10.0.2.2:8080 en Windows IE, verá que es lo mismo que su Mac Safari http: // localhost: 8080 / o http://127.0.0.1:8080
fuente
localhost
. (por ejemplo, webpack-dev-server)10.2.2.3 or .4
? Puedo hacer ping.2
tan bien como esos: VM es Windows Server ejecutándose bajo Windows ServerUna combinación de algunas cosas eventualmente hizo que las cosas funcionaran de mi parte. Ejecutando un servidor de matraz en macosx.
En mi máquina virtual de Windows edité el archivo de hosts:
C:\windows\system32\drivers\etc\hosts
10.0.2.2 outer
Apagar VM y en mi Mac en VirtualBox:
VirtualBox > preferences > Network > Host-only Networks > +
para agregar una redvboxnet1
My_VM > settings > Network > Adapter 1
.Enable Network Adapter
y establezcaAttached to:
enBridged Adapter
.Advanced > Promiscuous Mode:
enAllow VMs
.OK
My_VM > settings > Network > Adapter 1
.Attached to:
nuevo aNAT
.Después fuí a
Adapter 2
Attached to:
aHost-only Adapter
y seleccione la red añadida anteriorvboxnet1
.Inicié mi servidor en mi Mac, ejecutándolo
127.0.0.1:5000
y ahora estaba accesible en mi máquina virtual enhttp://10.0.2.2:5000
Hombre, qué pesadilla probar en IE en mac. ¿Cómo no hay una manera más simple?
fuente
rails s -b 127.0.0.1
y accedí a él desde todas las máquinas virtuales enhttp://10.0.2.2:3000
y funcionó. Me pregunto si el cambio de configuración desde arriba persistió de alguna manera incluso después de revertirlo todo.vboxnet1
funcione, pero terminó funcionando. Gracias por las pistas!Resolví agregando un reenvío de puertos en la configuración de Virtualbox en la red. Host IP set 127.0.0.1 puerto: 8080 IP de invitado: Proporcione cualquier IP para el sitio web (por ejemplo, 10.0.2.5) puerto: 8080 Ahora desde el acceso de máquina invitado http://10.0.2.5:8080 usando IE
fuente
En el cuadro virtual como se dijo arriba, puede agregar este archivo de hosts de línea
pero para guardarlo, si no tiene administradores en su máquina virtual, simplemente mueva el archivo de hosts al escritorio, luego edítelo para agregar la línea 10.0 .... exterior, guarde el archivo y muévalo a su lugar original.
fuente
verifique si puede golpear su máquina principal con:
ipconfig
(obtenga su dirección IP)ping <ip>
otelnet <ip> <port>
Si no puede llegar al puerto, intente agregar una nueva regla de entrada en su firewall primario que permita puertos locales.
Entonces pude acceder
http://<ip>:<port>
fuente
En caja virtual
Ahora el bit complicado es su localhost, si está ejecutando desde Node.js configure la dirección IP en 0.0.0.0, luego busque su propia dirección IP, por ejemplo cmd: ipconfig -> 10.0.1.3
Escriba esa dirección con el número de puerto. Y funcionará.
fuente
Pasos generales:
fuente
En Windows con un Windows 7 virtual, lo único que funcionó para mí fue usar NAT y reenvío de puertos (no se pudo ejecutar la conexión en puente). Encontré un tutorial aquí: http://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a-server/ (desplácese hacia abajo para la parte con " Reenvío de puertos a una máquina virtual ").
Con estos cambios, pude llegar al sitio web de xampp con " http: //192.168.xx.x: 8888 / mywebsite " en Internet Explorer 10 en mi máquina virtual.
Encontré la IP en el Panel de control XAMPP> Netstat ("Sistema").
fuente
Si usa Virtual Box, puede conectar Mac OSX (y creo que Linux) a su máquina virtual de Windows usando una línea de código -> Sugiero detener la caja antes de ejecutar esto en la terminal.
VBoxManage modifyvm "YOUR VM NAME" --natdnshostresolver1 on
Notaré que esto es de los documentos de Dinghy, que estoy ejecutando, pero es un comando de caja virtual, por lo que no debería importarle lo que uses siempre que sea Virtual Box
fuente
Necesito ejecutar en localhost, no alguna IP extraña.
1) Desde su terminal Mac, haga lo posible
iconfig -a
para encontrar su dirección IP local. Probablemente sea el último.en7: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV> ether 38:c9:86:32:0e:69 inet6 fe80::ea:393e:a54f:635%en7 prefixlen 64 secured scopeid 0xe inet 10.1.5.60 netmask 0xfffffe00 broadcast 10.1.5.255 nd6 options=201<PERFORMNUD,DAD> media: autoselect (1000baseT <full-duplex,flow-control>) status: active
por ejemplo, 10.1.5.60
2) inicie su imagen de Windows. inicio> escriba
cmd
para obtener un terminal3)
notepad c:\windows\system32\drivers\etc\hosts
4) agrega la siguiente línea
10.1.5.60 localhost
5) abra IE, y la siguiente url debería llegar al servidor que se ejecuta en su mac:
http://localhost:3000/
fuente
Obtenga la IP para la máquina que ejecuta Apache (inet addr: in
ifconfig
) e ingrésela en la barra de direcciones del navegador del cuadro virtual.fuente
En realidad, la respuesta del usuario 477494 es en principio correcta.
He aplicado la misma lógica en otros entornos (host OS X - Windows XP virtual) y eso funciona. Tuve que alternar la pila LAMP del host para obtener la dirección IP y el puerto Apache para resolver, pero una vez que lo descubrí, me reí.
fuente