Назад | Перейти на главную страницу

Как поставить мост поверх связанного интерфейса?

Я настраиваю сервер Ubuntu 11.10 с несколькими интерфейсами Ethernet, которые связаны для избыточности. Я планирую использовать его в качестве узла KVM, поэтому мне понадобится сетевой мост.

Для этого я установил ifenslave и bridge-utils, а затем написал свой /etc/network/interfaces файл. Соответствующая часть выглядит следующим образом:

auto br0
iface br0 inet static
    address 10.1.254.101
    netmask 255.255.255.0
    network 10.1.254.0
    broadcast 10.1.254.255
    gateway 10.1.254.50
    dns-nameservers 10.1.254.252
    bridge_ports bond0
    bridge_stp off

iface bond0 inet manual
    bond-slaves eth0 eth3
    bond_mode balance-rr
    bond_miimon 100

К сожалению, это не дает мне возможности подключения. ifup br0 дает мне "can't add bond0 to bridge br0: Invalid argument", и ifdown br0 дает мне "device bond0 is not a slave of br0". Если я изменю свой interfaces файл, чтобы избавиться от моста, у меня есть полное соединение, но мне понадобится мост.

Я думаю что-то в моем interfaces файл неправильный, но я не знаю, как его исправить. Кто-нибудь знает? Спасибо!

Вот как я настроил систему Ubuntu 10.04 LTS для соединения поверх связанных интерфейсов:

iface eth0 inet manual
iface eth5 inet manual

# eth0 & eth5 form bond0 for the x.y.z.0/25 subnet
auto bond0
iface bond0 inet static
        bond_miimon 100
        bond_mode active-backup
        bond_downdelay 200
        bond_updelay 200
    address x.y.z.35
    netmask 255.255.255.128
    network x.y.z.0
    post-up ifenslave bond0 eth0 eth5
    pre-down ifenslave -d bond0 eth0 eth5

auto br0
iface br0 inet static
    bridge_ports bond0
    address x.y.z.35
    netmask 255.255.255.128
    network x.y.z.0
    gateway x.y.z.126

Вы можете попробовать добавить эти строки в определение интерфейса br0:

    pre-up ifup bond0
    post-down ifdown bond0