The situation
The access switch AS1 has two gigabit uplinks to the distribution switch DS1. Today Spanning Tree blocks one of them, so users share 1 Gbps and the second cable sits idle. Bundle the two links into Port-channel 1 with LACP, carry VLANs 10 and 20 over it as a trunk, and prove that both members forward.
- 1. Goal: Gi1/0/1–2 on DS1 and Gi1/0/23–24 on AS1 become Port-channel 1, an 802.1Q trunk for VLANs 10 and 20.
- 2. Traffic: Each flow is hashed onto one member; different flows can use different members.
Task 1: plan it
Decide the protocol and mode on each side, the channel number, and where the trunk settings go.
Show the plan
| Setting | Choice | Why |
|---|---|---|
| Protocol | LACP (802.3ad) | Open standard, and it checks the far end before bundling, unlike mode on. |
| Modes | active on both | active/active and active/passive both bundle; passive/passive never does. |
| Channel number | 1 on both | Only locally significant, but matching numbers keep it readable. |
| Trunk settings | On interface Port-channel 1 | Settings on the port-channel are copied to the members, which keeps them consistent. |
| Members must match | Speed, duplex, mode (trunk), allowed VLANs, native VLAN | A member that differs is suspended. |
Task 2: configure both switches
Show the configuration
! DS1
interface range GigabitEthernet1/0/1 - 2
channel-group 1 mode active
!
interface Port-channel1
switchport mode trunk
switchport trunk allowed vlan 10,20channel-group creates Port-channel 1 automatically. The trunk settings are then applied to the port-channel.
! AS1
interface range GigabitEthernet1/0/23 - 24
channel-group 1 mode active
!
interface Port-channel1
switchport mode trunk
switchport trunk allowed vlan 10,20The same on the access switch. On some older switches you also need switchport trunk encapsulation dot1q before switchport mode trunk.
port-channel load-balance src-dst-ipOptional, global configuration: hash on source and destination IP so traffic between many hosts spreads more evenly than with the default MAC-based hash on some platforms.
Task 3: verify
AS1#show etherchannel summary Flags: D - down P - bundled in port-channel I - stand-alone s - suspended H - Hot-standby (LACP only) R - Layer3 S - Layer2 U - in use f - failed to allocate aggregator Number of channel-groups in use: 1 Number of aggregators: 1 Group Port-channel Protocol Ports ------+-------------+-----------+----------------------------------------------- 1 Po1(SU) LACP Gi1/0/23(P) Gi1/0/24(P)
AS1#show interfaces trunk Port Mode Encapsulation Status Native vlan Po1 on 802.1q trunking 1 Port Vlans allowed on trunk Po1 10,20
Question: what does Spanning Tree show for VLAN 10 now?
One port, Po1, forwarding. Spanning Tree treats the bundle as a single link, so there is nothing left to block between DS1 and AS1. Check with show spanning-tree vlan 10.
Task 4: break it and fix it
Each output below comes from a slightly different mistake. Work out the cause before opening the answer.
Fault A
AS1#show etherchannel summary | begin Group Group Port-channel Protocol Ports ------+-------------+-----------+----------------------------------------------- 1 Po1(SD) LACP Gi1/0/23(I) Gi1/0/24(I)
Show diagnosis
Both members are (I) stand-alone and the channel is down: LACP found no partner. Someone configured channel-group 1 mode passive on both switches. Passive only answers; two passive ends never start the negotiation. Fix: make at least one side active.
Fault B
AS1#show etherchannel summary | begin Group Group Port-channel Protocol Ports ------+-------------+-----------+----------------------------------------------- 1 Po1(SU) LACP Gi1/0/23(P) Gi1/0/24(s)
Show diagnosis
Gi1/0/24 is (s) suspended: its settings don't match the bundle. Typically someone configured the member directly, for example switchport trunk allowed vlan 10 on Gi1/0/24 only. Fix: remove the member-specific settings (default interface is quickest, then re-add channel-group 1 mode active) and configure trunk settings on Port-channel 1 only.
Fault C
DS1 uses channel-group 1 mode on, AS1 uses mode active. What do you expect?
Show diagnosis
No bundle. on sends no LACP at all, so AS1's active ports never hear a partner and stay stand-alone, while DS1 forces a channel. That mismatch can also cause Spanning Tree to err-disable ports (EtherChannel misconfiguration guard). Fix: use LACP on both ends, or on on both ends, never a mix.
Task 5: check yourself
DS1 is LACP active and AS1 is LACP passive. Does the bundle form?
One member of a two-link bundle fails. What happens to traffic?
Where should switchport trunk allowed vlan 10,20 be configured?