IP-адреса для каждой из виртуальных машин должны быть настроены в самой виртуальной машине, а не на главном компьютере.
Это помогает изобразить каждую виртуальную машину и хост с их собственными интерфейсами, однако физический кабель выходит из него только у хоста, поэтому интерфейсы гостевой виртуальной машины должны быть соединены с интерфейсом хоста.
Вы создаете мост в файле /etc /networks /interfaces, как показано ниже:
auto lo br0 eth0
iface lo inet loopback
iface br0 inet static
bridge_ports eth0
address 192.168.1.10
netmask 255.255.255.0
gateway 192.168.1.1
Это создаст новый мост при запуске сетевого стека (например, при загрузке), добавит к нему ваш интерфейс и предоставит мосту IP-адрес хоста. Здесь вы можете увидеть мост:
$ brctl show
bridge name bridge id STP enabled interfaces
br0 8000.60a4ecf28d84 no eth0
Вы можете обращаться с интерфейсом br0 так же, как с интерфейсом eth0, который он содержит.
Затем в гостевых конфигурационных файлах у вас есть строка вроде:
vif = ['bridge=br0, mac=00:16:3E:12:16:19']
Это говорит: «дайте этой виртуальной машине виртуальный интерфейс и добавьте его к мосту br0, и дайте ему следующий mac».
Обратите внимание, что установка MAC-адреса здесь не требуется, но я предпочитаю, чтобы я мог использовать DHCP для назначения статического IP-адреса гостям - таким образом, мне не нужно жестко кодировать любые IP-адреса, кроме хоста ( и DHCP-сервер, который в моем случае является самой виртуальной машиной).
Затем в гостевой системе вы просто настраиваете его так же, как на любой другой машине с Linux:
auto eth0
iface eth0 inet static
address 192.168.1.11
netmask 255.255.255.0
gateway 192.168.1.1
Обратите внимание, что это в конфигурации сети гостевой машины.
Когда вы включите виртуальную машину, вы увидите, что мост теперь имеет два интерфейса:
$ brctl show
bridge name bridge id STP enabled interfaces
br0 8000.60a4ecf28d84 no eth0
vif1.0
Этот vif1.0 является виртуальным интерфейсом гостя. Теперь гость сможет пропинговать шлюз и общаться так же, как если бы он был напрямую подключен к вашей сети с помощью небольшого количества кабеля.