Only one link participating in LACP bond

Issues related to configuring your network
Post Reply
bernie
Posts: 1
Joined: 2014/11/24 16:26:36

Only one link participating in LACP bond

Post by bernie » 2014/11/24 18:53:31

Hi everybody.

I'm trying to set up an LACP bond in CentOS 5.5 with eth1 and eth2 below. Everything looks fine but only eth1 emits LACPDUs. I've done this a bunch of times before, also on CentOS, but haven't seen exactly this behavior. Per the output below, eth2 is definitely link up and I can see the partner's LACPDUs in tcpdump. It just looks like it doesn't want to play,

Here's how the participant interfaces and bond look. Not missing anything completely obvious, am I?

Code: Select all

[root@eng-ci network-scripts]# grep -v "#" /etc/sysconfig/network-scripts/ifcfg-eth1 | awk NF
DEVICE=eth1
BOOTPROTO=none
HWADDR=00:E0:81:41:87:2D
ONBOOT=no
HOTPLUG=no
MASTER=bond0
SLAVE=yes
[root@eng-ci network-scripts]# grep -v "#" /etc/sysconfig/network-scripts/ifcfg-eth2 | awk NF
DEVICE=eth2
BOOTPROTO=none
HWADDR=00:E0:81:41:86:FF
ONBOOT=no
HOTPLUG=no
MASTER=bond0
SLAVE=yes
[root@eng-ci network-scripts]# grep -v "#" /etc/sysconfig/network-scripts/ifcfg-bond0 | awk NF
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
mtu=11000
BONDING_OPTS="miimon=100 mode=4 lacp_rate=0 xmit_hash_policy=layer3+4"
BONDING_SLAVE0="eth1"
BONDING_SLAVE0="eth2"
[root@eng-ci network-scripts]# cat /proc/net/bonding/bond0 
Ethernet Channel Bonding Driver: v3.4.0 (October 7, 2008)

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

802.3ad info
LACP rate: slow
Active Aggregator Info:
	Aggregator ID: 3
	Number of ports: 1
	Actor Key: 9
	Partner Key: 1043
	Partner Mac Address: 02:04:96:98:80:3c

Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:e0:81:41:87:2d
Aggregator ID: 3

Slave Interface: eth2
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:e0:81:41:86:ff
Aggregator ID: 4
[root@eng-ci network-scripts]# ethtool eth1
Settings for eth1:
	Supported ports: [ TP ]
	Supported link modes:   10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	                        1000baseT/Half 1000baseT/Full 
	Supports auto-negotiation: Yes
	Advertised link modes:  100baseT/Full 
	Advertised auto-negotiation: Yes
	Speed: 100Mb/s
	Duplex: Full
	Port: Twisted Pair
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: on
	Supports Wake-on: g
	Wake-on: d
	Current message level: 0x000000ff (255)
	Link detected: yes
[root@eng-ci network-scripts]# ethtool eth2
Settings for eth2:
	Supported ports: [ TP MII ]
	Supported link modes:   10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	Advertised auto-negotiation: Yes
	Speed: 100Mb/s
	Duplex: Full
	Port: MII
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: on
	Supports Wake-on: g
	Wake-on: g
	Current message level: 0x00000007 (7)
	Link detected: yes
[root@eng-ci network-scripts]#
----------

[Moved from CentOS 7 -- Networking Support to CentOS 5 -- Networking support]

User avatar
Super Jamie
Posts: 310
Joined: 2014/01/10 23:44:51

Re: Only one link participating in LACP bond

Post by Super Jamie » 2014/12/04 11:48:38

Is an MTU of eleven thousand (a SuperJumbo Frame) really valid for an old 100Mbps interface? I doubt it.

BONDING_SLAVEn is not a valid config option on EL, I think this comes from SLES. You can remove these, they won't have any effect.

xmit_hash_policy=layer3+4 is not LACP-compliant, only layer2 and layer2+3 should be used on Mode 4 bonds. Sometimes it works but it's worth a try removing it.

The default is slow rate, so you don't need to specify it.

It also appears your switch is not configured properly. See the bond thinks its active Aggregator only has one slave:

Code: Select all

    Active Aggregator Info:
       Aggregator ID: 3
       Number of ports: 1
and each slave sees a different Aggregator ID:

Code: Select all

    Slave Interface: eth1
    Aggregator ID: 3

    Slave Interface: eth2
    Aggregator ID: 4
Start by removing the MTU, the invalid config options, and double checking the switch config.

How are you determining that only one slave is sending LACPDUs?

Post Reply