如何将桥置于绑定接口之上?

如何将桥置于绑定接口之上?

我正在设置一个 Ubuntu Server 11.10 盒子,该盒子带有多个以太网接口,这些接口已绑定以实现冗余。我计划将其用作 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是错误的,但我不知道如何纠正。有人知道吗?谢谢!

答案1

这是我配置 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

答案2

您可以尝试将以下行添加到 br0 接口的定义中:

    pre-up ifup bond0
    post-down ifdown bond0

相关内容