Bonding problems (bonded bridge active-backup)

Feb 5, 2018
13
0
1
39
I've configured my server with a bonded and bridged connection and seem to have gotten in a little over my head. Our networking group's switch configuration may also be involved. I have kernel logs going back to July 16th and since August 14th I keep periodically getting the following error for reasons unclear (though I know they have been troubleshooting a multicast issue):

Code:
kernel: [   38.456871] vmbr0: received packet on bond0 with own address as source address (addr:14:18:77:5a:5c:2c, vlan:0)

While investigating, I looked at /cat/net/bonding/bond0 and see that my bonding mode is "round-robin". However, in my configuration, I had set active-backup. Did I set this incorrectly?

Here is my /etc/network/interfaces file:

Code:
auto lo
iface lo inet loopback

#auto eno1
allow-hotplug eno1
iface eno1 inet manual
        bond-master bond0

iface eno2 inet manual

iface eno3 inet manual

iface eno4 inet manual

#auto enp13s0
allow-hotplug enp13s0
iface enp13s0 inet manual
        bond-master bond0

auto bond0
iface bond0 inet manual
        bond-slaves none
        bond-mode active-backup
        bond-miimon 100
        bond-primary enp13s0

auto vmbr0
iface vmbr0 inet static
        address ##redacted
        netmask ##redacted
        gateway ##redacted
        network ##redacted
        broadcast ##redacted
        bridge-ports bond0
        bridge-stp off
        bridge-fd 0

Here is /cat/net/bonding/bond0

Code:
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: load balancing (round-robin)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eno1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: 14:18:77:5a:5c:2c
Slave queue ID: 0

Slave Interface: enp13s0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: a0:36:9f:51:4c:08
Slave queue ID: 0

Can I also ask what is the proper way to restart this interface if I want to try different settings. I ran 'systemctl restart networking' via SSH and it locked up. I logged into our light-out controller however and was still unable to bring up the interface. I had to reboot at that point (I hadn't made any config changes; so rebooting reliably raised the interface as it has in the past with the configuration above).
 
Feb 5, 2018
13
0
1
39
Thank you! I have it working now.

The "laptop mode" perfectly describes what I wanted to accomplish. On the laptop, the WiFi interface is inferior to an Ethernet connection, but is better then nothing, hence an active-backup setting which prioritizes the Ethernet is desired. The only thing missing is having a bridge on top, but I had already figured that out. Here are the settings I'm using in case anyone else wants to do this.

Code:
#Check "laptop mode" section:  https://wiki.debian.org/Bonding

#Default settings for loopback
auto lo
iface lo inet loopback

#Slaves must be set to auto and appear before the bond in this file
#NOTE: bonded-bridge seems to use the MAC from this first interface
#though it may only be the first one successfully raised which is not
#exactly the same thing.
auto eno1
allow-hotplug eno1
iface eno1 inet manual
        bond-master bond0
        bond-primary enp13s0
        bond-mode active-backup

#Unused interfaces
iface eno2 inet manual

iface eno3 inet manual

iface eno4 inet manual

#Slaves must each have identical bond settings
auto enp13s0
allow-hotplug enp13s0
iface enp13s0 inet manual
        bond-master bond0
        bond-primary enps13s0
        bond-mode active-backup

#The bond must also be set to auto, but 'bond-slaves none' prevents
#the bond from auto-starting the already started slaves when a
#networking restart is performed.  A miimon setting is required
auto bond0
iface bond0 inet manual
        bond-slaves none
        bond-primary enp13s0
        bond-mode active-backup
        bond-miimon 100

#The bridge is configured last and determines the IP address
#Using a bond and one bridge, stp and fd are not needed
#(warning: I'm not confident about the stp/fd setting but it works)
auto vmbr0
iface vmbr0 inet static
        address #redacted
        netmask #redacted
        gateway #redacted
        network #redacted
        broadcast #redacted
        bridge-ports bond0
        bridge-stp off
        bridge-fd 0


And here is the successful output of 'cat /proc/net/bonding/bond0':

Note: my 10G NIC is not actually running at 10G yet because our
10G switch isn't installed yet.

Code:
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: enp13s0 (primary_reselect always)
Currently Active Slave: enp13s0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eno1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: 14:18:77:5a:5c:2c
Slave queue ID: 0

Slave Interface: enp13s0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 3
Permanent HW addr: a0:36:9f:51:4c:08
Slave queue ID: 0
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE and Proxmox Mail Gateway. We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get your own in 60 seconds.

Buy now!