CentOs localhost só funciona quando conectado à internet

CentOs localhost só funciona quando conectado à internet

Estou tentando resolver esse problema (intermitentemente) há três meses, mas ainda não consigo fazê-lo funcionar nem mesmo entender por que isso acontece.

O CENÁRIO:

Eu tenho um VirtualBox instalado no meu {HP 32bit, Windows 7}laptop

Neste VB instalei CentOs 6.5 mínimo, Nginx, PHP-FPM sem problemas.

Resumindo, tudo funciona bem.

O problema

O problema é que só consigo acessar locahostse estiver conectado à Internet.

Enquanto estiver conectado à Internet, se eu for para http://192.168.1.100/tudo funcionar, posso ver meus arquivos index.htmlperfeitamente, mas assim que fico off-line, não recebo nada, como se estivesse tentando acessar o Google sem estar conectado à Internet.

Esta é uma captura de tela das minhas configurações do Vbox:

insira a descrição da imagem aqui

Também aqui está a configuração para/etc/sysconfig/network-scripts/ifcfg-eth0:

insira a descrição da imagem aqui

Eu fiz o seguinte várias vezes.

Tentei com iptablesdesativado/ativado
Tentei apenas com host, adaptadores em ponte NAT
Tentei com IP estático e DHCP..
redes atualizadas várias vezes

Tenho certeza de que a resposta está em algum lugar, porque ainda não tenho as configurações perfeitas, mas misturo muitas coisas à medida que vou, então ainda não consigo fazê-lo funcionar.

Responder1

Nas configurações da rede VirtualBox, você tem a máquina CentOS 'ligada' à sua rede WiFi, com um endereço IP estático.

Seu laptop não terá um endereço IP fixo em sua conexão WiFi; quando você não está conectado ao WiFi, o Windows não tem conexão de rede instalada e funcionando e não sabe como acessar o servidor CentOS. Quando você se conecta ao WiFi, seu roteador fornece ao Windows um endereço na mesma rede e então ele pode chegar ao servidor CentOS.

Eles estão sendo executados no mesmo computador, mas são separados e não podem se comunicar automaticamente entre si. A solução é alterar a configuração da rede de alguma forma, e como você a altera depende do que você deseja fazer.

A maneira mais fácil seria ir ao Painel de Controle do Windows, Conexões de Rede e encontrar o seucom fioadaptador de rede (supondo que seu laptop tenha um e você não o use), vá para as propriedades e defina um endereço de rede TCP/IP de 192.168.1.101, máscara de sub-rede de 255.255.255.0, sem gateway.

Isso fingirá que seu computador está sempre na mesma rede que a máquina CentOS e sempre pode acessá-la, mas ainda assim deve permitir que a conexão WiFi assuma o controle e seja sua conexão com a Internet quando você a usa, e ainda permitir que o CentOS saia para a Internet quando o WiFi está conectado e ainda permite que outros computadores se conectem ao CentOS e ainda permite que seu computador funcione em outras redes WiFi, mas impedirá que sua conexão com fio funcione em tantos lugares.

Existem outras abordagens que você pode adotar, mas todas elas afetarão um ou mais desses casos de uso e exigirão mais trabalho para serem implementadas posteriormente.

[Editar: estou ignorando onde você diz "não consigo acessar localhost". Isso pode ser importante. Você deve descrever exatamente qual é o seu teste - qual computador você está usando, qual software você está carregando, onde você está digitando localhost?]

Editar: Nova configuração sugerida

Isso envolve ter uma rede separada de dois computadores apenas para o Windows se comunicar com o CentOS.

  1. No Windows, na imagem que você mostrou aquihttps://i.stack.imgur.com/a3CIZ.jpg- vá para as propriedades do adaptador VirtualBox Host-Only Network, nas propriedades do Internet Protocol TCP/IP v4, e defina um endereço IP de 192.168.250.1 e uma máscara de sub-rede de 255.255.255.0, deixe as outras configurações vazias e OK. disso.

  2. Nas configurações da Máquina Virtual CentOS (com ela desligada), vá para as configurações de Rede e defina o Adaptador 1 como "Adaptador Somente Host".

  3. Ligue a máquina CentOS. Edite /etc/sysconfig/network-scripts/ifcfg-eth0e defina o endereço IP 192.168.250.2 e a máscara de sub-rede 255.255.255.0. Não tem gateway nem servidores DNS. Reinicie a rede ou reinicie a máquina CentOS.

Agora você deve ter esta nova rede separada de 192.168.250.1 – 192.168.250.2 para conversar entre eles. Execute seu NGinX para que ele escute o endereço 192.168.250.2 e visite http://192.168.250.2/o Windows para acessá-lo.

Isso deve funcionar com ou sem WiFi. O único problema é que o CentOS não consegue acessar a Internet para fazer atualizações ou instalações. Se isso for um problema:

  1. Desligue a máquina CentOS e vá para as configurações do VirtualBox, em Rede. Escolha a guia Adaptador 2, habilite-a e defina-a como Adaptador em ponte.

  2. Ligue a máquina CentOS e configure uma interface eth1. Configure isso para obter um endereço IP dinamicamente/por DHCP. Eu uso system-config-network-tui, mas tive que instalar. Você pode copiar. /etc/sysconfig/network-scripts/ifcfg-eth0 to /etc/sysconfig/network-scripts/ifcfg-eth1Reinicie a rede e certifique-se de que ela apareça.

Ele deve ter uma conexão de rede associada ao seu WiFi como a original, que só funciona quando o WiFi está conectado, mas o CentOS pode usá-lo para acessar a Internet.

informação relacionada