Клиентская ОС VirtualBox (с использованием NAT) может получить доступ к локальной сети хоста. Почему?

Моя сеть несколько проста: все компьютеры в моей локальной сети (рабочий стол Ubuntu, рабочий стол Win7, нетбук XP) подключены к домашнему маршрутизатору dlink, который подключен к кабельному модему ISP. ЛВС имеет IP-подсеть 10.10.10.0/24, шлюз (маршрутизатор dlink) - 10.10.10.1, ПК - 10.10.10.100-120, через DHCP. ПК делят папки между собой (щелчок правой кнопкой мыши -> поделиться, это samba, верно?). Пока все хорошо.

Теперь на рабочем столе Ubuntu есть VirtualBox. Я планировал установить виртуальные машины в «песочнице» для тестирования вредоносных программ (и мониторинга того, как они «звонят домой»). Поэтому я установил виртуальную машину Ubuntu с сетью, настроенной на режим NAT (режим по умолчанию, я думаю, подсеть 10.0.2.0/24).

Итак, я открываю Nautilus в ВМ, захожу в «сеть», и, к моему удивлению ... ВМ способна видеть все общие папки на хосте . LAN !!!

Как? Разве «Общие папки» не работают только в локальной сети? Почему виртуальная машина, которая находится в другой подсети, может получить доступ, скажем, к общей папке на компьютере с Win7? Они не в одной локальной сети! (это будет режим Virtualbox "Bridged", правильно?). И нет, я не имею в виду функцию «Общая папка» VirtualBox (которая отображает диск хоста как общий сетевой ресурс для гостя), я им не пользуюсь.

Итак, мне явно не хватает фундаментальных знаний о том, как работают общие папки и NAT. Я предполагал, что NAT изолирует ВМ от моей локальной сети, сохраняя при этом возможность просматривать Интернет. Я очень удивлен, что смог увидеть рабочие группы моей локальной сети, даже находясь в другой подсети.

Итак, вопрос: как это возможно? Как работает это соотношение между VirtualBox, Shared Folders и NAT? И как настроить виртуальную машину, чтобы она не могла видеть локальную сеть гостя, но все еще могла просматривать Интернет?

2
задан 30 March 2013 в 14:44

2 ответа

Глава 6. Виртуальная сеть :

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

Работа в сети в VirtualBox (Oracle Blogs):

Каждый виртуальный компьютер считает, что он находится в собственной изолированной сети. Когда они отправляют свой трафик через шлюз (10.0.2.2), VirtualBox перезаписывает пакеты, чтобы они выглядели так, как будто они исходили от хоста, а не от гостя (работающего внутри хоста).

Как и на физическом хосте, NAT препятствует удаленным соединениям, но разрешает исходящие соединения. Я не думаю, что есть сетевой режим, который может отличить вашу локальную сеть от остального Интернета.

0
ответ дан 30 March 2013 в 14:44

Просто выстрел в темноте, вы сказали, что гостем Ubuntu является 10.0.2.0/24. 24 поместил бы их в ту же подсеть нет? 255.255.255.0

0
ответ дан 30 March 2013 в 14:44

Другие вопросы по тегам:

Похожие вопросы: