Octet

What must match for ports to bundle into an EtherChannel, and what happens when one does not?

Show the answer

Say this first

All members must agree with each other and with the port-channel: speed and duplex, layer 2 or layer 3, access or trunk mode, the same access VLAN or the same allowed and native VLANs, and the same channel protocol and partner. A member that disagrees is suspended (s in show etherchannel summary) with a log message giving the reason, while the rest of the bundle keeps working. I make every change on the port-channel interface, which applies it to all members.

Go deeper

What a suspended member looks like

Output
ASW2# show etherchannel summary | begin Group
Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------
1      Po1(SU)         LACP      Gi1/0/47(P)     Gi1/0/48(s)
Output
%EC-5-CANNOT_BUNDLE2: Gi1/0/48 is not compatible with Gi1/0/47 and will be suspended (vlan mask is different)

Someone added a VLAN on Gi1/0/48 directly instead of on Po1.

Flags worth knowing

P bundled, s suspended, I stand-alone, H hot-standby, D down. On the port-channel, SU is layer 2 and in use, RU layer 3 and in use, SD layer 2 and down.

Partner checks

LACP also checks that every member reaches the same partner system ID. A member cabled to a different switch cannot join the bundle. On Catalyst 9000, a member whose far end does not run LACP logs %ETC-5-L3DONTBNDL2: Gi1/0/47 suspended: LACP currently not enabled on the remote port.

Changing a live bundle

Cisco IOS
interface Port-channel1
 switchport trunk allowed vlan add 40

Done on the port-channel, the change reaches both members at once and nothing gets suspended.

Traps

  • Editing a member interface instead of the port-channel. The member drifts from the bundle and gets suspended.
How did you do?