1

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

СЦЕНАРИЙ:

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

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

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

Эта проблема

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

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

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

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

Я сделал следующие различные времена.

Пробовал с iptables отключен / включен
Пробовал только с хостом, мостовыми адаптерами NAT
Пробовал со статическим IP и DHCP ..
несколько раз обновлял сети

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

1 ответ1

0

В настройках сети VirtualBox ваш компьютер CentOS «подключен» к вашей сети Wi-Fi со статическим IP-адресом.

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

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

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

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

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

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

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

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

  1. В Windows, на изображении, которое вы показали здесь http://i.imgur.com/xiLaUst.jpg?1 - перейдите к свойствам сетевого адаптера VirtualBox Host-Only Network, в свойствах интернет-протокола 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 для него в сети. Выберите вкладку «Адаптер 2», включите его, установите для него «Мостовой адаптер».

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .