Configuración de red Virtualbox y Vagrant Windows 8.1

0

Estoy intentando acceder a un sitio web en un cuadro errante (Laravel Homestead) a través del puerto 8000 en mi host, pero siempre da el error ERR_CONNECTION_REFUSED en Chrome e IE.

He intentado varias configuraciones, cambiar configuraciones de host e invitado (NIC, firewalls, etc.) ¡pero me estoy desesperando! Sé que lo logré en una máquina con Windows 7 hace algún tiempo, pero ahora no puedo recordar cómo lo hice.

De todos modos, haré mi mejor esfuerzo para describir mi red doméstica actual si esto ayuda. Tengo dos enrutadores A y B. El enrutador A es el enrutador del ISP y tiene el servicio DHCP (192.168.1.50 - 192.168.1.254) y el firewall en la configuración del medio. El enrutador B está en mi habitación y se conecta con el enrutador A a través del cable Ethernet. El DHCP está desactivado y la puerta de enlace es la IP del enrutador A. Mi máquina host puede conectarse a través de Ethernet o inalámbrica al enrutador B. En el lado de los enrutadores, solo intenté desactivar los firewalls con algunos ajustes que probé.

Mi máquina host ejecuta Windows 8.1 64 bit y el sistema operativo invitado es Ubuntu Server 14.10 64 bit. La caja errante configuró las NIC para mí. NIC 1 es NAT con varias configuraciones de reenvío de puertos (notablemente ssh- & gt; 2222- & gt; 22, tcp8000- & gt; 8000- & gt; 80). La NIC 2 es solo de host con la dirección IP 192.168.10.10, máscara de subred 255.255.255.0.

Todo funciona bien (SSH) hasta que intento acceder al sitio web ya configurado a través del puerto 8000 en el navegador del host ( http://192.168.10.10:8000 ). Siempre da ese error.

Verifiqué la configuración de Virtualbox (inicialmente vagrant o virtualbox tiene un error en el que la IP de la NIC 2 se configuró de forma incorrecta como 192.168.10.1, que corregí después pero aún no obtuve ganancia). He probado con máscara de subred diferente (255.255.0.0). He desactivado todos los cortafuegos del enrutador, también he comprobado el cortafuegos de Windows. He buscado en Google por todo el lugar. Intenté diferentes IP's de redes privadas. He editado el archivo de configuración de etc / network / interfaces en el invitado, he intentado solucionar problemas o he comprobado: iptables, route -n, netstat -rn ... Ping funciona de host a invitado y viceversa. Pero telnet 192.168.10.10 8000 de la máquina host dice que la conexión fue rechazada.

Incluso traté de desactivar mi wifi y conectar mi máquina a través del cable Ethernet, y corregirlo si me equivoco, pero mi red doméstica no debería tener nada que ver con esta situación, ¿no?

¡Realmente estoy empezando a perder la esperanza en esto, se está volviendo realmente frustrante!

Cualquier ayuda será bienvenida!

tiagosv
fuente
Sospecho que esto no es un problema con el sistema operativo. Verifique la configuración de enrutamiento de su red y también verifique si puede hacer ping y telnet al sitio web desde su red.
vembutech
Puedo hacer ping en ambos sentidos. Telnet de host a invitado en 192.168.10.10:8000 no muestra ningún error, solo una pantalla en blanco (así que supongo que se está conectando). Pero no puedo acceder al sitio web a través del navegador. ¿Qué más debo hacer / solucionar problemas?
tiagosv

Respuestas:

0

Tuve este mismo problema hace apenas un minuto en dos computadoras (Windows 8 y Windows 10), lo que hice fue ejecutar "vagrant up & amp; & amp; vagrant ssh", seguido de:

netstat -ntlp | grep LISTEN

Y comparado con alguien en el canal IRC de Laravel, lo primero que me llamó la atención es que me faltaba esta entrada nginx en la salida de netstat:

tcp        0      0 0.0.0.0:80              0.0.0.0:*   4/nginx: worker

Lo que estaba haciendo mal, era que estaba usando vagabundo comandos (posiblemente incorrectamente), así que lo que funcionó para mí fue usar granja ordena en su lugar:

homestead init
homestead up
homestead ssh
#homestead halt, homestead provision, homestead destroy, etc...

apégate a estos comandos y deberías estar bien, también remueve cualquier caja antigua de vagabundos y casitas de tus aplicaciones de virtualbox.

Si todo salio bien localhost: 8000 y 192.168.10.10 debe mostrar: "No se ha especificado ningún archivo de entrada"

EDITAR 1: Descubrí que los problemas están relacionados con el Vagrantfile, aunque corrí:

rm Vagranfile
vagrant init laravel/homestead
vagrant up

De alguna manera, a la configuración le falta el reenvío de puertos y probablemente a muchas otras configuraciones.

EDIT 2: También descubrí que "homestead ssh" parece estar defectuoso y puede causar problemas de retroceso, que se capturan como espacios, si este problema afecta al uso del siguiente comando para iniciar sesión:

ssh vagrant@localhost -p 2222

Déjame saber si mi respuesta ayudó a resolver tu problema

reconx86
fuente
Gracias por su respuesta, pero no funcionó. ¿Cómo consigues "homestead" para actuar como una orden? Obviamente no es un comando en Windows CMD. Hay un archivo homestead.rb en la carpeta de scripts. ¿Ejecutas el intérprete de rubí en él?
tiagosv
Supongo que no has instalado correctamente la granja, corre composer global require "laravel/installer=~1.1" Cuando este comando comience a ejecutarse, verá también la carpeta donde se descarga, en mi caso: ~ / AppData / Roaming / Composer / vendor / bin. Por lo tanto, no es necesario agregar esta ruta a las variables de entorno de Git Bash o Windows. Para hacer esto ejecute: sysdm.cpl dentro de las ventanas & gt; haga clic en Avanzado [pestaña] & gt; haga clic en Variables de entorno ... & gt; haga clic en Ruta (EDITAR) & gt; añadir ;%APPDATA%/Composer/vendor/bin. Cierre Git Bash y vuelva a abrir, después de esto, el comando homestead debería estar disponible.
reconx86
También asegúrate de haber ejecutado este comando vagrant box add laravel/homestead para que la caja de la granja esté realmente disponible en su sistema
reconx86