802.3ad not activated on bond0 but on bond1

decibel83

Renowned Member
Oct 15, 2008
210
1
83
Hi,
I configured two bonding with the very same configuration:

Code:
iface eth0 inet manual

iface eth1 inet manual

iface eth2 inet manual

iface eth3 inet manual

auto bond0
iface bond0 inet manual
        slaves eth0 eth2
        bond_miimon 100
        bond_mode 802.3ad

auto bond1
iface bond1 inet manual
        slaves eth1 eth3
        bond_miimon 100
        bond_mode 802.3ad

The bond0 interface has the vmbr0 bridge, the bond1 interface does not have any bridge:

Code:
auto vmbr0
iface vmbr0 inet static
        address 192.168.2.2
        netmask 255.255.255.0
        gateway 192.168.2.254
        dns-nameservers 192.168.2.254 8.8.8.8 8.8.4.4
        bridge_ports bond0
        bridge_stp on
        bridge_fd 0

The bond1 interface is working good with the IEEE 802.3ad Dynamic link aggregation bonding mode, but the bond0 interface is working with the load balancing (round-robin) mode:

Code:
root@servir02:~# cat /proc/net/bonding/bond0
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: eth0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 5c:f3:fc:e5:79:14
Slave queue ID: 0

Slave Interface: eth2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 5c:f3:fc:6a:9c:58
Slave queue ID: 0

root@servir02:~# cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

802.3ad info
LACP rate: slow
Min links: 0
Aggregator selection policy (ad_select): stable
System priority: 65535
System MAC address: 5c:f3:fc:e5:79:16
Active Aggregator Info:
    Aggregator ID: 1
    Number of ports: 2
    Actor Key: 9
    Partner Key: 1011
    Partner Mac Address: 40:a6:e8:ed:a3:01

Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 5c:f3:fc:e5:79:16
Slave queue ID: 0
Aggregator ID: 1
Actor Churn State: none
Partner Churn State: none
Actor Churned Count: 0
Partner Churned Count: 0
details actor lacp pdu:
    system priority: 65535
    system mac address: 5c:f3:fc:e5:79:16
    port key: 9
    port priority: 255
    port number: 1
    port state: 61
details partner lacp pdu:
    system priority: 1
    system mac address: 40:a6:e8:ed:a3:01
    oper key: 1011
    port priority: 1
    port number: 118
    port state: 61

Slave Interface: eth3
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 5c:f3:fc:6a:9c:5a
Slave queue ID: 0
Aggregator ID: 1
Actor Churn State: none
Partner Churn State: none
Actor Churned Count: 0
Partner Churned Count: 0
details actor lacp pdu:
    system priority: 65535
    system mac address: 5c:f3:fc:e5:79:16
    port key: 9
    port priority: 255
    port number: 2
    port state: 61
details partner lacp pdu:
    system priority: 1
    system mac address: 40:a6:e8:ed:a3:01
    oper key: 1011
    port priority: 1
    port number: 170
    port state: 61

The two LAGs on the switch are configured in the very same way.

If I disable the vmbr0 bridge the bond0 interface is correctly activated using the 802.3ad protocol.

Why the 802.3ad protocol is not working if I have a bridge on the bond0 interface=
Could you help me to find out where I am wrong, please?

Thanks!