it-swarm-ru.tech

Как сделать сеть между виртуальными машинами в VirtualBox?

У меня есть две виртуальные машины в VirtualBox. Я хотел бы установить связь между ними. На данный момент у меня есть конфигурация по умолчанию на обоих, но они, похоже, имеют одинаковый IP-адрес 10.0.2.15. Я также хотел бы иметь возможность использовать Интернет с обоими, и это возможно сейчас.

По умолчанию сетевым параметром является NAT, но кажется, что они не могут работать внутри сети, поскольку имеют одинаковый IP-адрес. Но если я изменю на internal networking, я предполагаю, что не могу получить доступ к Интернету с виртуальными машинами.

Как я могу настроить сеть между виртуальным гостем и иметь доступ к Интернету на них?

90
Jonas

Вы пробовали это Руководство по виртуальным сетям ?

Виртуальная машина получает свой сетевой адрес и конфигурацию в частной сети от сервера DHCP, встроенного в VirtualBox. Таким образом, IP-адрес, назначенный виртуальной машине, обычно находится в сети, отличной от хоста. Поскольку более одной карты виртуальной машины можно настроить для использования NAT, первая карта подключается к частной сети 10.0.2.0, вторая карта к сети 10.0.3.0 и так далее.

Я думаю, что вы ищете " Внутренние сети ", соединяющие внутренние виртуальные машины друг с другом.

Вы можете использовать диалоговое окно «Настройки» виртуальной машины в графическом пользовательском интерфейсе VirtualBox. В категории «Сеть» диалогового окна настроек выберите «Внутренняя сеть» из выпадающего списка режимов сети. Теперь выберите имя существующей внутренней сети из выпадающего списка ниже или введите новое имя в поле ввода.

57
Ye Lin Aung

Я нашел следующее решение для моей среды:

  • первый адаптер с внутренней сетью для доступа к другой виртуальной машине
  • второй адаптер с NAT для доступа в интернет.

Эти настройки могут быть выполнены с помощью графического интерфейса Oracle VM VirtualBox Manager. Изначально у меня была та же проблема, что и у Джонаса, я пропустил DHCP. Наконец я нашел эту статью (архивная копия, оригинальная ссылка мертва) и использовал:

VBoxManage dhcpserver add --netname intnet --ip 10.13.13.100 --netmask 255.255.255.0 --lowerip 10.13.13.101 --upperip 10.13.13.254 --enable

из командной строки. После этого все работало нормально.

Я осмелюсь сказать, что руководство является плохим ресурсом, так как большая часть конфигурации VirtualBox на хосте Windows может быть выполнена с помощью графического интерфейса, и это серьезное неудобство, что нельзя настроить DHCP с графическим интерфейсом.

Моя среда: я использую портативный VirtualBox 4.1.2r73507 в 64-битной Windows 7. В настоящее время режим Host-only и bridged не работает, так как отсутствует адаптер Host-only. У меня проблема, аналогичная описанной в немецком вопрос на форуме Virtual Box , у меня нет адаптера только для хоста.

31
bernd_k

Так я подключаю гостей vbox только в режиме NAT (проверено на VirtualBox 4.2.4).

Просто используйте IP-адрес шлюза для перехода от одного гостя к хосту. Затем используйте переадресацию портов для прокси-трафика хоста к другому гостю.

Например, если гость А хочет подключиться к услуге гостевой В, которая прослушивает порт 1000, А должен использовать IP-адрес шлюза (для первого интерфейса NAT это 10.0.2.2). Затем необходимо настроить переадресацию портов на гостевой B так, чтобы весь трафик, полученный хостом через порт 1000, направлялся на гостевой B на порт 1000.

Это может не сработать для каждого сервиса, но, похоже, работает хорошо для ssh, salt, ...

В заключение, вам не обязательно нужен режим Host-only для подключения нескольких гостей, но я не хочу сказать, что режим Host-only - не лучший вариант для вашего случая использования.

11
user173653

Вам нужен тип LAN для Host-соединения (что-то подобное в английской версии) на гостевых машинах и мостовое соединение на вашей Host-машине.

9
stim

(ответ на вопрос от bernd_k)

Для обмена файлами между Хостом и гостями, на самом деле, общие файлы, а не файлы.

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

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

В следующей статье подробно объясняется, как делиться папками в Windows:
Как открыть общий доступ к папкам в Windows 7 с помощью мастера общих папок?

3
harrymc

Я сделал следующие шаги, и это наконец-то сработало у меня (на CentOS VB):

  • Используйте NAT для основного сетевого адаптера (Настройки -> Сеть -> Адаптер1 "подключен к NAT").
  • Добавьте другой адаптер («Настройки» -> «Сеть» -> «Включить адаптер 2», подключенный к адаптеру только для хоста ») -> установите« Разнородный режим »на« Разрешить все ».
  • Запустите VB.
  • Добавьте другой сетевой интерфейс (cp/etc/sysconfig/network-scripts/ifcfg-eth0/etc/sysconfig/network-scripts/ifcfg-eth1).
  • Измените MAC-адрес для eth1 в соответствии с тем, который отображается в Adapter2 ((Настройки -> Сеть ->).
  • Перезагрузите сеть "Служба перезагрузки сети"

Тогда этот VB должен получить доступ к Интернету и может быть доступен из других (VB и локальный компьютер).

Заметка:

Адаптер NAT будет использоваться для доступа в Интернет, в то время как адаптер Host-Only будет использоваться для сетевого доступа между любыми другими VB и локальным компьютером.

2
Moll

У меня есть две сетевые карты на моем компьютере Oracle VM XP

1-й мост с быстрым IP-адресом, поскольку я использую его в качестве клиента с сетевой конфигурацией сервера. Изменен шлюз по умолчанию на тот же, что и у сетевой карты два (Nat 2nd)

2-й Nat С получения IP-адреса от Oracle VM

работает отлично!

2
Malcolm