Сетевой доступ к VirtualBox VM с сетевых компьютеров

16

Итак, я настроил виртуальную машину в Virtual Box на ПК (обозначен как PC2), и я разместил веб-службу в виртуальной машине (IIS).

ПК2 - Windows Server 2003 VM - Windows 7 x86

Теперь я хочу получить доступ к веб-службам с другого ПК (обозначенного как ПК1) в сети, к которой подключен ПК1. Следующая диаграмма будет полезна, чтобы получить четкое представление.

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

Итак, локальная сеть 192.168.5.0. Но виртуальные сетевые порты IP по умолчанию 192.168.56.1. В ВМ его IP от DHCP по умолчанию. (ipconfig дает вам IP-адрес, например 10.0.0.2.15, маску подсети 255.255.255.0 и шлюз как 10.0.2.2).

На этом этапе я могу пропинговать PC1 (192.168.5.31) с виртуальной машины (10.0.2.15), но я не могу пропинговать 10.0.2.15 с ПК 1. Даже если я делаю виртуальные порты виртуальных машин и ПК2 в некотором статическом диапазоне, от виртуальной машины, Я не могу пинговать любой IP.

Как решить эту ситуацию? заранее спасибо

Тарик Канака
источник

Ответы:

12

Если вы просто использовали настройки сети по умолчанию в вашей виртуальной машине, это будет NAT с DHCP. Это означает, что вы получаете IP-адрес локальной сети от вашего DHCP-сервера VirtualBox, и вы не можете получить доступ к машине извне.

Ознакомьтесь с руководством VirtualBox по работе в сети: https://www.virtualbox.org/manual/ch06.html#networkingmodes

Я думаю, что мостовое соединение должно быть лучшим. Вы должны настроить статический IP-адрес.

РЕДАКТИРОВАТЬ: Относительно редактирования, удаляющего "сеть только для хоста": Это правда, что вы не можете видеть виртуальную машину снаружи. Но вы получаете виртуальные интерфейсы (vboxnetX) на вашем хост-компьютере. Так что, если вы проложите маршрут, он должен работать. Установка более сложная, но виртуальная машина менее уязвима.

Бенджамин Маурер
источник
спасибо, я разобрался с этим, сделав его в качестве адаптера, и перезапустил виртуальную
машину
Я искал в Интернете часами, наконец нашел этот ответ. Иногда RTFM экономит ваше время на самом деле. Спасибо!
user1641838
Может ли кто-то более подробно объяснить, как это работает и как его маршрутизировать?
scoots
-1

Вы должны либо выставить IP-адрес виртуальной машины во внешнюю сеть, а НЕ делать его DHCP, либо настроить маршрутизацию пакетов на ПК2, чтобы он работал в качестве прокси (что я не знаю, как вы будете делать это в Windows, в Linux это так Полегче).

В качестве опции вы можете настроить веб-сервер на ПК2 и настроить его проксирование на ВМ, но опять же в этом случае вам лучше использовать статический IP для ВМ, а не DHCP.

Третий вариант - объединить все машины в VPN, где PC2 будет маршрутизатором / сервером. Но это слишком сложно для Windows, чтобы настроить.

Алексей Каменский
источник
ну, я делаю его статическим и устанавливаю его в качестве мостового адаптера. То же самое происходит, когда я могу получить диапазон IP-
адресов на виртуальной машине,