Создание моста в Linux, делитесь сетью, как VirtualBox

1

У меня есть локальная сеть 192.168.1.1/24. Я использую libvirt и хочу, чтобы мои виртуальные машины также использовали эту сеть, по крайней мере ее подсеть, например 192.168.1.128/25. Тем не менее, все параметры моста libvirt создают другую сеть, и я не могу настроить их на использование моей сети, VirtManager выдает ошибку и вручную определяет сеть переадресации

`` `

 <network>
    <name>mynetwork</name>
    <bridge name="mybr0" />
    <forward mode="route" dev="em1"/>
    <ip address="192.168.1.1" netmask="255.255.255.0">
      <dhcp>
        <range start="192.168.1.128" end="192.168.1.254" />
      </dhcp>
    </ip>
  </network>

`` `

Это дает следующую ошибку:

virsh # net-start mynetwork
error: Failed to start network mynetwork
error: internal error: Network is already in use by interface em1

VirtualBox имеет возможность создать мостовое соединение, где он просто получает IP-адрес от DHCP-сервера на моем маршрутизаторе и действует как другая машина в моей сети. Как мне этого добиться? Я попытался вручную создать мост с bridge-utilsпакетом, но пока не повезло.

РЕДАКТИРОВАТЬ: я использую Ubuntu 14.04.

Мустафа
источник
Это зависит от того, какой дистрибутив Linux вы используете. Разные вкусы справляются с этим по-разному. Таким образом, вы должны предоставить нам эту информацию.
Даниил
@Daniel Я использую Ubuntu 14.04
Mustafa

Ответы:

2

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

Если вы используете кабельное соединение, то на странице libvirt Wiki показано, как соединить интерфейс Ethernet с вашими виртуальными машинами.

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

Этот хороший пост от Bohdi Zazen показывает, как это сделать. Он использует АРП-прокси для передачи агр трафика специально сформированного водопроводную интерфейс. Существует только одна устаревшая функция - создание интерфейса крана с помощью команды / пакета tunctl. Не делайте этого, iproute может позаботиться об этом за вас:

    ip tuntap add tap0 mode tap user root
    ip link set tap0 up

В противном случае его решение работает без нареканий.

Если мысль об использовании статического IP-адреса вам невыносима, вы можете использовать NAT, а не мост, как объясняется здесь .

MariusMatutiae
источник