While we’re at it let’s add two Cisco Catalyst 2950 switches to our topology and detail how to configure those additional switches. This has already been documented hundreds of times across the Internet so I’m doing this more for myself than for anyone else. The Cisco 2950 supports EtherChannel in one of these modes: Port Aggregation Protocol (PAgP) or Link Aggregation Control Protocol (LACP). There always seems to be some confusion regarding the configuration between PAgP and LACP so let me quote straight from the Cisco documentation:
Switch interfaces exchange PAgP packets only with partner interfaces configured in the auto or desirable modes. Switch interfaces exchange LACP packets only with partner interfaces configured in the active or passive modes. Interfaces configured in the on mode do not exchange PAgP or LACP packets.
…
Both the auto and desirable PAgP modes allow interfaces to negotiate with partner interfaces to determine if they can form an EtherChannel based on criteria such as interface speed and, for Layer 2 EtherChannels, trunking state and VLAN numbers.
…
Both the active and passive LACP modes allow interfaces to negotiate with partner interfaces to determine if they can form an EtherChannel based on criteria such as interface speed and, for Layer 2 EtherChannels, trunking state, and VLAN numbers.
We’ll be configuring our EtherChannel for LACP so we’ll use channel-group x mode active on both the Cisco 3750 and 2950 switches.
Sample Topology
Cisco Catalyst 3750E Switch
enable config t interface gig1/0/37 switchport trunk encapsulation dot1q switchport mode trunk channel-protocol lacp channel-group 3 mode active interface gig1/0/38 switchport trunk encapsulation dot1q switchport mode trunk channel-protocol lacp channel-group 3 mode active interface gig1/0/47 switchport trunk encapsulation dot1q switchport mode trunk channel-protocol lacp channel-group 4 mode active interface gig1/0/48 switchport trunk encapsulation dot1q switchport mode trunk channel-protocol lacp channel-group 4 mode active exit exit
Cisco Catalyst 2950 Switch 1 & 2
enable config t vlan 100 name "192-168-100-0/24" exit vlan 200 name "192-168-200-0/24" exit interface vlan 100 ip address 192.168.100.40 255.255.255.0 no shut exit spanning-tree mode mst spanning-tree mst configuration name AcmeNetworks revision 1 instance 1 vlan 100 instance 2 vlan 200 interface fas0/1 switchport mode trunk channel-protocol lacp channel-group 1 mode active interface fas0/2 switchport mode trunk channel-protocol lacp channel-group 1 mode active interface port-channel 1 switchport mode trunk interface fas0/31 switchport mode trunk channel-protocol lacp channel-group 2 mode active interface fas0/32 switchport mode trunk channel-protocol lacp channel-group 2 mode active interface port-channel 2 switchport mode trunk exit exit
That’s all well and good but I’m sure you want to see the output… is it working as expected?
Cisco Catalyst 2950 Switch #1
C2950-SW1#show lacp neighbor Flags: S - Device is requesting Slow LACPDUs F - Device is requesting Fast LACPDUs A - Device is in Active mode P - Device is in Passive mode Channel group 1 neighbors Partner's information: LACP port Oper Port Port Port Flags Priority Dev ID Age Key Number State Fa0/1 SA 32768 0064.xxxx.4d80 7s 0x3 0x126 0x3D Fa0/2 SA 32768 0064.xxxx.4d80 21s 0x3 0x127 0x3D Channel group 2 neighbors Partner's information: LACP port Oper Port Port Port Flags Priority Dev ID Age Key Number State Fa0/31 SA 32768 0019.xxxx.49c0 23s 0x2 0x1F 0x3D Fa0/32 SA 32768 0019.xxxx.49c0 21s 0x2 0x20 0x3D C2950-SW1#show spanning-tree MST00 Spanning tree enabled protocol mstp Root ID Priority 16384 Address 3475.xxxx.a400 Cost 0 Port 65 (Port-channel1) Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Bridge ID Priority 32768 (priority 32768 sys-id-ext 0) Address 0018.xxxx.4a40 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Interface Role Sts Cost Prio.Nbr Type ---------------- ---- --- --------- -------- -------------------------------- Po1 Root FWD 100000 128.65 P2p Po2 Desg FWD 100000 128.66 P2p MST01 Spanning tree enabled protocol mstp Root ID Priority 16385 Address 54e0.xxxx.d441 Cost 110000 Port 65 (Port-channel1) Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Bridge ID Priority 32769 (priority 32768 sys-id-ext 1) Address 0018.xxxx.4a40 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Interface Role Sts Cost Prio.Nbr Type ---------------- ---- --- --------- -------- -------------------------------- Po1 Root FWD 100000 128.65 P2p Po2 Desg FWD 100000 128.66 P2p MST02 Spanning tree enabled protocol mstp Root ID Priority 16386 Address 0064.xxxx.4d80 Cost 100000 Port 65 (Port-channel1) Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Bridge ID Priority 32770 (priority 32768 sys-id-ext 2) Address 0018.xxxx.4a40 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Interface Role Sts Cost Prio.Nbr Type ---------------- ---- --- --------- -------- -------------------------------- Po1 Root FWD 100000 128.65 P2p Po2 Desg FWD 100000 128.66 P2p
Let’s have a look at the other Cisco 2950 switch;
Cisco Catalyst 2950 Switch #2
C2950-SW2#show lacp neighbor Flags: S - Device is requesting Slow LACPDUs F - Device is requesting Fast LACPDUs A - Device is in Active mode P - Device is in Passive mode Channel group 1 neighbors Partner's information: LACP port Oper Port Port Port Flags Priority Dev ID Age Key Number State Fa0/1 SA 32768 0064.xxxx.4d80 9s 0x4 0x130 0x3D Fa0/2 SA 32768 0064.xxxx.4d80 10s 0x4 0x131 0x3D Channel group 2 neighbors Partner's information: LACP port Oper Port Port Port Flags Priority Dev ID Age Key Number State Fa0/31 SA 32768 0018.xxxx.4a40 4s 0x2 0x1F 0x3D Fa0/32 SA 32768 0018.xxxx.4a40 25s 0x2 0x20 0x3D C2950-SW2#show spanning-tree MST00 Spanning tree enabled protocol mstp Root ID Priority 16384 Address 3475.xxxx.a400 Cost 0 Port 65 (Port-channel1) Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Bridge ID Priority 32768 (priority 32768 sys-id-ext 0) Address 0019.xxxx.49c0 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Interface Role Sts Cost Prio.Nbr Type ---------------- ---- --- --------- -------- -------------------------------- Po1 Root FWD 100000 128.65 P2p Po2 Altn BLK 100000 128.66 P2p MST01 Spanning tree enabled protocol mstp Root ID Priority 16385 Address 54e0.xxxx.d441 Cost 110000 Port 65 (Port-channel1) Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Bridge ID Priority 32769 (priority 32768 sys-id-ext 1) Address 0019.xxxx.49c0 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Interface Role Sts Cost Prio.Nbr Type ---------------- ---- --- --------- -------- -------------------------------- Po1 Root FWD 100000 128.65 P2p Po2 Altn BLK 100000 128.66 P2p MST02 Spanning tree enabled protocol mstp Root ID Priority 16386 Address 0064.xxxx.4d80 Cost 100000 Port 65 (Port-channel1) Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Bridge ID Priority 32770 (priority 32768 sys-id-ext 2) Address 0019.xxxx.49c0 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Interface Role Sts Cost Prio.Nbr Type ---------------- ---- --- --------- -------- -------------------------------- Po1 Root FWD 100000 128.65 P2p Po2 Altn BLK 100000 128.66 P2p
We can see that ports Fas0/31 and Fas0/32 that make up Port-Channel 2 are in Alternate Blocking mode on SW2. This is expected since the bridge address of SW1 (0018.xxxx.4a40) is lower than SW2 (0019.xxxx.49c0) and the links are equal cost.
Cheers!
Image credit: Ravenel Bridge Charleston by Roger Kirby