[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#439007: two bond interfaces with 2.6.18-5-amd64 + module-init-tools



Package: linux-image-2.6-amd64
Version: 2.6.18.dfsg.1-13etch1

Debian Etch (up to date)
ifenslave-2.6 1.1.0-6
module-init-tools 3.3-pre4-2
ifupdown 0.6.8

I'm trying to setup two bonding interfaces with different settings (mode 0 and
2).

I followed the documentaion at
/usr/src/linux-source-2.6.18/Documentation/networking/bonding.txt

/etc/modprobe.d/bonding:
alias bond0 bonding
options bond0 -o bond0 mode=0 miimon=100
alias bond1 bonding
options bond1 -o bond1 mode=2 miimon=100

This didn't work because of the -o option. I found a debian bug
report regarding the -o option:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=270903#5

Next I tried the syntax that module-init-tools permits.

/etc/modprobe.d/bonding:
install bond0 /sbin/modprobe bonding -o bond0 mode=2 miimon=100 downdelay=200
install bond1 /sbin/modprobe bonding -o bond1 mode=0 miimon=100 downdelay=200

This was working with the 2.6.21 kernel from backports.org which I was
using at that time. The modules were loaded during boot time and ifup was able
to setup both bond interfaces with different options just fine.

Next I went back to 2.6.18, because of some other problems with the
2.6.21 backports kernel.

Now the bond1 interface is not configured properly and I get some
error messages during boot time.

/var/log/messages:
Aug 21 15:55:51 VU0EA003 kernel: e1000: eth0: e1000_watchdog: NIC Link is Up 1000 Mbps Full Duplex
Aug 21 15:55:51 VU0EA003 kernel: bonding: bond0: enslaving eth0 as an active interface with an up link.
Aug 21 15:55:51 VU0EA003 kernel: e1000: eth1: e1000_watchdog: NIC Link is Up 1000 Mbps Full Duplex
Aug 21 15:55:51 VU0EA003 kernel: bonding: bond0: enslaving eth1 as an active interface with an up link.

Interface bond0 was setup correctly. But bond1 gives errors.

Aug 21 15:55:51 VU0EA003 kernel: Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)
Aug 21 15:55:51 VU0EA003 kernel: bonding: MII link monitoring set to 100 ms
Aug 21 15:55:51 VU0EA003 kernel: Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)
Aug 21 15:55:51 VU0EA003 kernel: bonding: MII link monitoring set to 100 ms
Aug 21 15:55:51 VU0EA003 kernel: Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)
Aug 21 15:55:51 VU0EA003 kernel: bonding: MII link monitoring set to 100 ms
Aug 21 15:55:51 VU0EA003 kernel: Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)
Aug 21 15:55:51 VU0EA003 kernel: bonding: MII link monitoring set to 100 ms
Aug 21 15:55:51 VU0EA003 kernel: Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)
Aug 21 15:55:51 VU0EA003 kernel: bonding: MII link monitoring set to 100 ms
Aug 21 15:55:51 VU0EA003 kernel: Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)
Aug 21 15:55:51 VU0EA003 kernel: bonding: MII link monitoring set to 100 ms

On screen I see some additional messages:

Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)
bonding: MII link monitoring set to 100ms
bond1: ERROR while getting interface flags: No such device
[...]
Failed to bring up bond1


If I try this on the command line it's also not working.

# modprobe -v bond1
install /sbin/modprobe bonding -o bond1 mode=0 miimon=100 downdelay=200
insmod /lib/modules/2.6.18-5-amd64/kernel/drivers/net/bonding/bonding.ko mode=0 miimon=100 downdelay=200

# ifup bond1
SIOCSIFADDR: No such device
bond1: ERROR while getting interface flags: No such device
SIOCSIFNETMASK: No such device
SIOCSIFBRDADDR: No such device
bond1: ERROR while getting interface flags: No such device
bond1: ERROR while getting interface flags: No such device
Failed to bring up bond1.

# ls -l /proc/net/bonding/
insgesamt 0
-r--r--r-- 1 root root 0 2007-08-21 16:28 bond0

/var/log/messages:
Aug 21 16:26:30 VU0EA003 kernel: Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)
Aug 21 16:26:30 VU0EA003 kernel: bonding: MII link monitoring set to 100 ms

All of this is working with the 2.6.21 kernel.

I don't know if it's a kernel, module-init-tools, ifupdown or ifenslave-2.6
problem, but the only part I have to change to get this running is the kernel.
I still can boot 2.6.21 and everything is ok.

At the moment I don't see any way to setup two bonding interfaces with
different options and kernel 2.6.18.


/etc/network/interfaces:

# The loopback network interface
auto lo
iface lo inet loopback

# client lan
auto bond0
iface bond0 inet static
        address 192.168.1.5
        netmask 255.255.255.0
        network 192.168.1.0
        gateway 192.168.1.1
        slaves eth0 eth1

# backup LAN
auto bond1
iface bond1 inet static
        address 10.60.1.244
        netmask 255.255.255.0
        network 10.60.1.0
        broadcast 10.60.1.255
        slaves eth2 eth3



working 2.6.21 example:

Aug 21 16:43:01 VU0EA003 kernel: e1000: eth0: e1000_watchdog: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX
Aug 21 16:43:01 VU0EA003 kernel: bonding: bond0: enslaving eth0 as an active interface with an up link.
Aug 21 16:43:01 VU0EA003 kernel: e1000: eth1: e1000_watchdog: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX
Aug 21 16:43:01 VU0EA003 kernel: bonding: bond0: enslaving eth1 as an active interface with an up link.
Aug 21 16:43:01 VU0EA003 kernel: e1000: eth2: e1000_watchdog: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX
Aug 21 16:43:01 VU0EA003 kernel: bonding: bond1: enslaving eth2 as an active interface with an up link.
Aug 21 16:43:01 VU0EA003 kernel: e1000: eth3: e1000_watchdog: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX
Aug 21 16:43:01 VU0EA003 kernel: bonding: bond1: enslaving eth3 as an active interface with an up link.

# ls -l /proc/net/bonding/
insgesamt 0
-r--r--r-- 1 root root 0 2007-08-21 16:43 bond0
-r--r--r-- 1 root root 0 2007-08-21 16:43 bond1

# ip addr
[...]
6: bond0: <BROADCAST,MULTICAST,MASTER,UP,10000> mtu 1500 qdisc noqueue
    link/ether 00:1b:21:01:9a:40 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.5/24 brd 192.168.1.255 scope global bond0
    inet6 fe80::21b:21ff:fe01:9a40/64 scope link
       valid_lft forever preferred_lft forever
7: bond1: <BROADCAST,MULTICAST,MASTER,UP,10000> mtu 1500 qdisc noqueue
    link/ether 00:30:48:90:1b:1c brd ff:ff:ff:ff:ff:ff
    inet 10.60.1.244/24 brd 10.60.1.255 scope global bond1
    inet6 fe80::230:48ff:fe90:1b1c/64 scope link tentative
       valid_lft forever preferred_lft forever



Reply to: