
He estado tratando de resolver este problema (intermitentemente) durante tres meses, pero todavía no puedo hacerlo funcionar ni entender por qué sucede.
EL ESCENARIO:
Tengo un VirtualBox instalado en mi {HP 32bit, Windows 7}
Laptop
En este VB, instalé CentOs 6.5 minimal, Nginx, PHP-FPM sin problemas.
En resumen, todo funciona bien.
El problema
El problema es que sólo puedo acceder locahost
si estoy conectado a Internet.
Mientras estoy conectado a Internet, si voy a http://192.168.1.100/
Todo funciona, puedo ver mis archivos index.html
bien, pero tan pronto como me desconecto, no obtengo nada, como si estuviera intentando acceder a Google sin estar conectado a Internet.
Esta es una captura de pantalla de mi configuración de Vbox.:
También aquí está la configuración para/etc/sysconfig/network-scripts/ifcfg-eth0
:
He hecho lo siguiente varias veces.
Probado con
iptables
deshabilitado/habilitado
Probado solo con host, adaptadores puenteados NAT
Probado con IP estática y DHCP...
redes actualizadas varias veces
Estoy seguro de que la respuesta está en alguna parte, porque todavía no tengo las configuraciones de instalación perfectas, pero estoy mezclando muchas cosas a medida que avanzo, por lo que todavía no puedo hacer que funcione.
Respuesta1
En la configuración de red de VirtualBox, tiene la máquina CentOS 'conectada' a su red WiFi, con una dirección IP estática.
Su computadora portátil no tendrá una dirección IP fija en su conexión WiFi; Cuando no estás conectado a WiFi, Windows no tiene conexión de red en funcionamiento y no sabe cómo acceder al servidor CentOS. Cuando se conecta a WiFi, su enrutador le da a Windows una dirección en la misma red y luego puede acceder al servidor CentOS.
Se ejecutan en la misma computadora, pero están separados y no pueden comunicarse automáticamente entre sí. La solución es cambiar la configuración de red de alguna manera, y cómo cambiarla depende de lo que quieras hacer.
La forma más sencilla podría ser ir al Panel de control de Windows, Conexiones de red, luego buscar sucableadoadaptador de red (suponiendo que su computadora portátil tenga uno y no lo use), vaya a las propiedades y configure una dirección de red TCP/IP de 192.168.1.101, máscara de subred de 255.255.255.0, sin puerta de enlace.
Esto hará que su computadora esté siempre en la misma red que la máquina CentOS y siempre pueda acceder a ella, pero aun así debería permitir que la conexión WiFi tome el control y sea su conexión a Internet cuando la use, y aún así permitirá que CentOS salga. Internet cuando WiFi está conectado, y aún permite que otras computadoras se conecten a CentOS, y aún permite que su computadora funcione en otras redes WiFi, pero impedirá que su conexión por cable funcione en tantos lugares como sea posible.
Hay otros enfoques que podría adoptar, pero todos afectarán a uno o más de estos casos de uso y requerirán más trabajo para solucionarlos posteriormente.
[Editar: estoy ignorando donde dices "no puedo acceder localhost
". Eso podría ser importante. Debe describir exactamente cuál es su prueba: ¿qué computadora está utilizando, qué software está cargando, dónde escribe localhost?]
Editar: Nueva configuración sugerida
Esto implica tener una red separada de dos computadoras solo para que Windows se comunique con CentOS.
En Windows, en la imagen que mostraste aquí.https://i.stack.imgur.com/a3CIZ.jpg- vaya a las propiedades del adaptador de red solo para host de VirtualBox, a las propiedades del protocolo de Internet TCP/IP v4 y establezca una dirección IP de 192.168.250.1 y una máscara de subred de 255.255.255.0, deje las otras configuraciones vacías y acepte. de ello.
En la configuración de la máquina virtual CentOS (con ella apagada), vaya a la configuración de red y configure el Adaptador 1 en "Adaptador solo de host".
Encienda la máquina CentOS. Edite
/etc/sysconfig/network-scripts/ifcfg-eth0
y configure la dirección IP 192.168.250.2 y la máscara de subred 255.255.255.0. No tener puerta de enlace, ni servidores DNS. Reinicie la red o reinicie la máquina CentOS.
Ahora debería tener esta nueva red separada de 192.168.250.1 - 192.168.250.2 para comunicarse entre ellos. Ejecute su NGinX para que escuche en la dirección 192.168.250.2 y visite http://192.168.250.2/
Windows para acceder a ella.
Esto debería funcionar con o sin WiFi. El único problema es que CentOS no puede acceder a Internet para realizar actualizaciones o instalaciones. Si esto es un problema:
Apague la máquina CentOS y vaya a la configuración de VirtualBox, en Red. Elija la pestaña Adaptador 2, habilítela y configúrela en Adaptador puenteado.
Encienda la máquina CentOS y configure una interfaz eth1. Configure esto para obtener una dirección IP dinámicamente/por DHCP. Lo uso
system-config-network-tui
pero tuve que instalarlo. Es posible que pueda copiar/etc/sysconfig/network-scripts/ifcfg-eth0 to /etc/sysconfig/network-scripts/ifcfg-eth1
Reinicie la red y asegúrese de que aparezca.
Debería tener una conexión de red unida a tu WiFi como la original que solo funciona cuando el WiFi está conectado, pero CentOS puede usarlo para acceder a Internet.