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

1

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

СЦЕНАРИЙ:

У меня установлен VirtualBox {HP 32bit, Windows 7} портативный компьютер

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

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

Эта проблема

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

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

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

enter image description here

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

enter image description here

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

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

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

user2679413
источник

Ответы:

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/ в винде чтобы добраться до него.

Это должно работать с или без 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 может использовать его для выхода в Интернет.

TessellatingHeckler
источник
Извините за задержку, я спросил и пошел на некоторое время. В любом случае, благодарю Вас! У меня такое чувство, что ты наконец-то можешь мне помочь. Но у меня есть одна проблема: я не могу найти Проводной сетевой адаптер в моей Win7 я пошел на это Control Panel\Network and Internet\Network Connections и только нашел эти сети Я даже пытался с некоторыми, изменив IP, но, похоже, не работает
user2679413
Хмм; Картинка крайне полезная, спасибо. У вас нет проводного соединения. Я не уверен, что это будет работать, но перейдите в свойства «Беспроводное сетевое соединение», затем нажмите «Протокол Интернета версии 4 (TCP / IP)» и нажмите кнопку свойств, затем перейдите на вкладку «Альтернативная конфигурация» и установите настроенный пользователь, просто поместите IP-адрес 192.168.1.101 и подсеть 255.255.255.0, ОК из всего. Надеемся, что ваш ноутбук будет использовать этот адрес, когда он не подключен к WiFi, и все равно будет подбирать адрес и работать правильно при подключении к WiFi.
TessellatingHeckler
Я думаю, что у нас может быть немного другая ОС, поскольку у меня нет вкладки «Альтернативная конфигурация», У меня есть только один генерал вкладку, и я заполнил цифры (хотя ваше предложение IP заканчивается 101, но то, что работало для меня ранее заканчивается 100) В конце все еще ничего, я не могу заставить его работать Я поддерживаю вас за ваши усилия, я буду продолжать пытаться, я думаю.
user2679413
Да, мое единственное беспроводное устройство - Windows 8. На экране, который вы видите, за кнопкой «Дополнительно» есть опция «вторичного IP», и я бы предложил разместить его там. Но если вы попытались ввести числа на экране, который вы показываете, и это не сработало, это больше проблем. У вас есть 192.168.1.100, отображаемый в вашей конфигурации CentOS eth0, поэтому вы не можете использовать этот адрес и в вашей компьютерной сети Windows 7, поэтому я предложил следующий. У Windows нет адреса на 192.168.1. ??? если это не Wi-Fi, я надеялся, что вы могли бы дать тот, к которому он всегда может вернуться.
TessellatingHeckler
Нет, ничего не работает. Эта проблема уже стоила мне много часов. Во всяком случае, в крайнем случае, есть ли способ, чтобы я работал, с другим методом? Я не знаю, что такое vagrant, но это может быть другой способ запуска виртуальной машины на моей машине, или как насчет использования мостов NAT, HOST Only? Я пытаюсь изменить свою среду WAMP, поэтому любая помощь будет полезна, пока я могу запустить веб-сервер и php с помощью centOs
user2679413