CentOs localhost работает только при подключении к интернету

CentOs localhost работает только при подключении к интернету

Я пытаюсь решить эту проблему (время от времени) уже три месяца, но так и не могу заставить ее работать или даже понять, почему это происходит.

СЦЕНАРИЙ:

{HP 32bit, Windows 7}У меня на ноутбуке установлен VirtualBox.

В этом VB я без проблем установил CentOs 6.5 minimal, Nginx, PHP-FPM.

Короче говоря, все работает хорошо.

Проблема

Проблема в том, что я могу получить доступ только locahostесли подключен к Интернету.

При подключении к Интернету, если я захожу на сайт, http://192.168.1.100/все работает, я вижу свои файлы index.html, но как только я отключаюсь от сети, я ничего не получаю, как будто я пытаюсь получить доступ к Google без подключения к Интернету.

Это снимок экрана моих настроек Vbox.:

введите описание изображения здесь

Также вот конфигурация для/etc/sysconfig/network-scripts/ifcfg-eth0:

введите описание изображения здесь

Я делал следующее несколько раз.

Пробовал с iptablesотключенным/включенным.
Пробовал с Host Only, NAT Bridged Adapters.
Пробовал со статическим IP и DHCP..
обновлял сети несколько раз.

Я уверен, что ответ где-то есть, потому что у меня до сих пор нет идеальных конфигураций настроек, но я смешиваю много вещей по ходу дела, поэтому все еще не могу заставить это работать.

решение1

В настройках сети VirtualBox машина CentOS подключена через мост к вашей сети WiFi со статическим IP-адресом.

У вашего ноутбука не будет фиксированного IP-адреса на его WiFi-подключении; когда вы не подключены к WiFi, Windows не имеет сетевого подключения и не знает, как получить доступ к серверу CentOS. Когда вы подключаетесь к WiFi, ваш маршрутизатор дает Windows адрес в той же сети, и тогда он может получить доступ к серверу CentOS.

Они работают на одном компьютере, но они разделены и не могут автоматически общаться друг с другом. Исправление заключается в том, чтобы как-то изменить сетевые настройки, а то, как вы это измените, зависит от того, что вы хотите сделать.

Самый простой способ — зайти в Панель управления Windows, Сетевые подключения, а затем найти свойпроводнойСетевой адаптер (при условии, что он есть на вашем ноутбуке и вы им не пользуетесь) зайдите в его свойства и установите сетевой адрес TCP/IP 192.168.1.101, маску подсети 255.255.255.0, без шлюза.

Это позволит вашему компьютеру всегда находиться в той же сети, что и машина CentOS, и всегда иметь к ней доступ, но при этом подключение по WiFi должно перехватывать управление и быть вашим интернет-подключением, когда вы его используете, и CentOS по-прежнему иметь возможность выходить в Интернет при подключении по WiFi, и другие компьютеры по-прежнему смогут подключаться к CentOS, и ваш компьютер по-прежнему сможет работать в других сетях WiFi, но это не позволит работать вашему проводному соединению во многих местах.

Существуют и другие подходы, которые вы можете использовать, но все они повлияют на один или несколько из этих вариантов использования и потребуют больше работы для их последующей реализации.

[Правка: Я игнорирую то, что вы говорите "не могу получить доступ localhost". Это может быть важно. Вы должны точно описать, в чем заключается ваш тест - какой компьютер вы используете, какое программное обеспечение вы загружаете, где вы вводите localhost?]

Редактировать: Новая предлагаемая конфигурация

Это подразумевает наличие отдельной сети из двух компьютеров, предназначенной только для взаимодействия Windows с CentOS.

  1. В Windows, на изображении, которое вы здесь показалиhttps://i.stack.imgur.com/a3CIZ.jpg- перейдите в свойства сетевого адаптера VirtualBox Host-Only, в свойства протокола Интернета TCP/IP v4 и установите IP-адрес 192.168.250.1 и маску подсети 255.255.255.0, оставьте остальные параметры пустыми и нажмите кнопку ОК.

  2. В настройках виртуальной машины CentOS (при выключенном питании) перейдите в настройки сети и установите для адаптера 1 значение «Только хост-адаптер».

  3. Включите машину CentOS. Отредактируйте /etc/sysconfig/network-scripts/ifcfg-eth0и установите IP-адрес 192.168.250.2 и маску подсети 255.255.255.0. Не должно быть шлюза, нет DNS-серверов. Перезапустите сеть или перезапустите машину CentOS.

Теперь у вас должна быть эта новая отдельная сеть 192.168.250.1 -- 192.168.250.2 для связи между ними. Запустите NGinX, чтобы он прослушивал адрес 192.168.250.2, и зайдите http://192.168.250.2/в Windows, чтобы получить к нему доступ.

Это должно работать с WiFi или без него. Единственная проблема в том, что CentOS не может получить доступ к Интернету для обновления или установки. Если это проблема:

  1. Выключите машину CentOS и перейдите в настройки VirtualBox для нее, в Network. Выберите вкладку Adapter 2, включите его, установите для него значение Bridged Adapter.

  2. Включите машину CentOS и настройте интерфейс eth1. Настройте его для получения IP-адреса динамически / по DHCP. Я использую, system-config-network-tuiно мне пришлось его установить. Вы можете скопировать /etc/sysconfig/network-scripts/ifcfg-eth0 to /etc/sysconfig/network-scripts/ifcfg-eth1Перезапустите сеть, убедитесь, что она заработала.

Он должен иметь сетевое подключение, подключенное к вашему WiFi, как и оригинальное, которое работает только при подключении WiFi, но CentOS может использовать его для выхода в Интернет.

Связанный контент