Как мне получить доступ к хост-компьютеру с гостевого компьютера?[закрыто]
-
09-06-2019 - |
Вопрос
Я только что создал новую виртуальную машину Windows XP на своем Mac с помощью VMware Fusion.Виртуальная машина использует NAT для совместного использования интернет-соединения хоста.
Как мне получить доступ к приложению Rails, которое доступно на самом Mac с помощью http://localhost:3000
?
Решение
На компьютере с XP найдите свой IP-адрес, перейдя в командную строку и набрав ipconfig
.Попробуйте заменить последнее число на 1 или 2.Например, если ваш IP-адрес 192.168.78.128, используйте http://192.168.78.1:3000.
Другие советы
Вы можете использовать "локальное" имя вашего хост-компьютера Mac (или любого другого компьютера Mac в сети):
где macname - это сетевое имя вашего хоста (или другого желаемого) Mac.
Для будущих посетителей:после того, как вы определили IP-адрес, вы можете добавить запись в файл Windows hosts, который находится по адресу C:\Windows\system32\drivers\etc\hosts, чтобы сопоставить IP-адрес с именем (виртуального) сервера.Добавьте строку, подобную этой:
192.168.78.1 myrubyapp
Теперь вы можете получить доступ к сайту в IE по адресу http://myrubyapp:3000
Если вы используете виртуальные хосты под управлением Apache, вам понадобится это, чтобы указать правильное имя сервера.
Поскольку этот вопрос довольно старый и относится к XP, вот альтернатива для новых операционных систем;
Если ты раскачиваешься Перспектива или Windows 7 как гостевая операционная система, и у вас есть виртуальные хосты, настроенные на хосте через Apache, вот как настроить:
В операционной системе хоста вам необходимо убедиться, что сетевое подключение осуществляется через NAT;
- Щелкните правой кнопкой мыши значок сети в окне виртуальной машины (внизу справа).
- Выберите "NAT".
- Выберите "Подключиться".
- Дождитесь, пока гостевая операционная система повторно подключится к сети
Затем В гостевой операционной системе;
- Нажмите Пуск > Сеть > Центр управления сетями и общим доступом
- Нажмите "Просмотреть статус" рядом с сетевым подключением
- Нажмите "Подробности".
- Найдите "Шлюз по умолчанию IPv4".
- Откройте Wordpad
- Редактировать C:\Windows\System32\drivers\etc\hosts
Добавьте в файл строку, например:
[default-gateway-IP] www.example.com [default-gateway-IP] example.com
Сохранить
- Попробуйте открыть
http://www.example.com
илиhttp://example.com
в IE
- На компьютере с XP выберите "Пуск" -> "Подключиться к" -> "Показать все подключения".
- Дважды щелкните Подключение по локальной сети.
- Перейдите на вкладку Поддержка.
- Выберите IP-адрес шлюза по умолчанию
<gateway-ip
> и нажмите http://<gateway-ip
>: 3000 в вашем браузере.
Попался:У вас должен быть указан http:// в адресе, иначе IE выдаст вам сообщение "Веб-страница не может быть отображена".
Для Django важно выполнить следующее:
./manage.py сервер запуска [IP-адрес шлюза по умолчанию]: 8000
потому что
https://docs.djangoproject.com/en/dev/ref/django-admin/
Обратите внимание, что IP-адрес по умолчанию, 127.0.0.1, недоступен с других компьютеров в вашей сети.Чтобы сделать ваш сервер разработки доступным для просмотра другими компьютерами в сети, используйте его собственный IP-адрес (например192.168.2.1) или 0.0.0.0 или ::(с включенным IPv6).
Я только что потратил час, пытаясь заставить это работать, следуя инструкциям в SO, но в итоге у меня получилось немного по-другому.
Настройки VMware
1.) Установите подключение VMware к NAT
2.) выполнить > cmd > ipconfig > скопировать значение шлюза по умолчанию
3.) отредактировать файл hosts (c:/Windows/System32/drivers/etc/hosts)
- добавьте это в ваш файл hosts:
<gateway-ip> yourserver.local
Настройки OS X
1.) отредактируйте конфигурацию Apache (например, sudo vim /etc/apache2/httpd.conf)
- добавьте эту запись vhost в свой файл httpd.conf:
NameVirtualHost 127.0.0.1 <VirtualHost 127.0.0.1> DocumentRoot "/path/to/your/project" ServerName yourserver.local <Directory "/path/to/your/project"> AllowOverride All Options All </Directory> </VirtualHost>
- сохранить и выйти (: wq)
2.) Отредактируйте ваш файл hosts (sudo vim /etc/hosts).
- добавьте эту строку в ваш файл hosts
127.0.0.1 yourserver.local
3.) Перезапустить Apache (перезапуск sudo apachectl)
Я обнаружил, что мне пришлось переключить настройки подключения в VMware, чтобы перезапустить соединение, прежде чем эти настройки заработали у меня.Я надеюсь, что это поможет.