Lesson Contents
Most of the issues with Etherchannels (Link Aggregation) are because of misconfiguration. Keep in mind that the configuration of all physical interfaces has to match. In this lesson we’ll take a look at some common issues with Etherchannels.
This is the topology I will use:
The idea is to bundle FastEthernet 0/13 and 0/14 into an Etherchannel but this is not working. Let’s look at the first issue…
Wrong Etherchannel Mode
Let’s look at our first issue, the Etherchannel is not working. First we’ll check if the interfaces are up and running:
SW1#show interfaces fa0/13 | include line protocol
FastEthernet0/13 is up, line protocol is up (connected)
SW1#show interfaces fa0/14 | include line protocol
FastEthernet0/14 is up, line protocol is up (connected)
SW2#show interfaces fa0/13 | include line protocol
FastEthernet0/13 is up, line protocol is up (connected)
SW2#show interfaces fa0/14 | include line protocol
FastEthernet0/14 is up, line protocol is up (connected)
All interfaces are operational. Let’s check if we have a port-channel interface:
SW1#show ip int brief | include Port
Port-channel1 unassigned YES unset down down
SW2#show ip int brief | include Port
Port-channel1 unassigned YES unset down down
We can verify that a port-channel interface has been created but it is down. Let’s check its details:
SW1#show etherchannel summary | begin Group
Group Port-channel Protocol Ports
------+-------------+-----------+-----------------------------------------------
1 Po1(SD) LACP Fa0/13(I) Fa0/14(I)
SW2#show etherchannel summary | begin Group
Group Port-channel Protocol Ports
------+-------------+-----------+-----------------------------------------------
1 Po1(SD) PAgP Fa0/13(I) Fa0/14(I)
Here’s a nice command to verify your etherchannel. Use the show etherchannel summary to see your port-channels. We can see that SW1 has been configured for LACP and SW2 for PAgP, this is never going to work. Let’s take a closer look:
SW1#show etherchannel 1 detail
Group state = L2
Ports: 2 Maxports = 16
Port-channels: 1 Max Port-channels = 16
Protocol: LACP
Minimum Links: 0
Ports in the group:
-------------------
Port: Fa0/13
------------
Port state = Up Sngl-port-Bndl Mstr Not-in-Bndl
Channel group = 1 Mode = Active Gcchange = -
Port-channel = null GC = - Pseudo port-channel = Po1
Port index = 0 Load = 0x00 Protocol = LACP
Flags: S - Device is sending Slow LACPDUs F - Device is sending fast LACPDUs.
A - Device is in active mode. P - Device is in passive mode.
Local information:
LACP port Admin Oper Port Port
Port Flags State Priority Key Key Number State
Fa0/13 SA indep 32768 0x1 0x1 0xF 0x7D
Age of the port in the current state: 0d:00h:11m:59s
Port: Fa0/14
------------
Port state = Up Sngl-port-Bndl Mstr Not-in-Bndl
Channel group = 1 Mode = Active Gcchange = -
Port-channel = null GC = - Pseudo port-channel = Po1
Port index = 0 Load = 0x00 Protocol = LACP
Flags: S - Device is sending Slow LACPDUs F - Device is sending fast LACPDUs.
A - Device is in active mode. P - Device is in passive mode.
Local information:
LACP port Admin Oper Port Port
Port Flags State Priority Key Key Number State
Fa0/14 SA indep 32768 0x1 0x1 0x10 0x7D
Age of the port in the current state: 0d:00h:12m:38s
Port-channels in the group:
---------------------------
Port-channel: Po1 (Primary Aggregator)
------------
Age of the Port-channel = 0d:00h:12m:55s
Logical slot/port = 2/1 Number of ports = 0
HotStandBy port = null
Port state = Port-channel Ag-Not-Inuse
Protocol = LACP
Port security = Disabled
The best command to use is show etherchannel detail. This gives you a lot of information but I’m particularly interested in seeing if LACP is configured for passive or active mode. Interfaces in active mode will “actively” try to form an etherchannel. Interfaces in passive mode will only respond to LACP requests. Let’s look at SW2:
SW2#show etherchannel 1 detail
Group state = L2
Ports: 2 Maxports = 8
Port-channels: 1 Max Port-channels = 1
Protocol: PAgP
Minimum Links: 0
Ports in the group:
-------------------
Port: Fa0/13
------------
Port state = Up Sngl-port-Bndl Mstr Not-in-Bndl
Channel group = 1 Mode = Desirable-Sl Gcchange = 0
Port-channel = null GC = 0x00010001 Pseudo port-channel = Po1
Port index = 0 Load = 0x00 Protocol = PAgP
Flags: S - Device is sending Slow hello. C - Device is in Consistent state.
A - Device is in Auto mode. P - Device learns on physical port.
d - PAgP is down.
Timers: H - Hello timer is running. Q - Quit timer is running.
S - Switching timer is running. I - Interface timer is running.
Local information:
Hello Partner PAgP Learning Group
Port Flags State Timers Interval Count Priority Method Ifindex
Fa0/13 U4/S4 H 30s 0 128 Any 10013
Age of the port in the current state: 0d:00h:15m:25s
Port: Fa0/14
------------
Port state = Up Sngl-port-Bndl Mstr Not-in-Bndl
Channel group = 1 Mode = Desirable-Sl Gcchange = 0
Port-channel = null GC = 0x00010001 Pseudo port-channel = Po1
Port index = 0 Load = 0x00 Protocol = PAgP
Flags: S - Device is sending Slow hello. C - Device is in Consistent state.
A - Device is in Auto mode. P - Device learns on physical port.
d - PAgP is down.
Timers: H - Hello timer is running. Q - Quit timer is running.
S - Switching timer is running. I - Interface timer is running.
Local information:
Hello Partner PAgP Learning Group
Port Flags State Timers Interval Count Priority Method Ifindex
Fa0/14 U4/S4 H 30s 0 128 Any 10014
Age of the port in the current state: 0d:00h:15m:28s
Port-channels in the group:
---------------------------
Port-channel: Po1
------------
Age of the Port-channel = 0d:00h:15m:51s
Logical slot/port = 2/1 Number of ports = 0
GC = 0x00000000 HotStandBy port = null
Port state = Port-channel Ag-Not-Inuse
Protocol = PAgP
Port security = Disabled
Here’s the output of show etherchannel detail of SW2. We can see that it has been configured for PAgP and the interfaces are configured for desirable mode. If they would have been configured for auto mode we would see the A flag. Let’s re-configure SW2 so that is uses LACP:
SW2(config)#no interface po1
SW2(config)#interface fa0/13
SW2(config-if)#channel-group 1 mode passive
SW2(config-if)#exit
SW2(config)#interface fa0/14
SW2(config-if)#channel-group 1 mode passive
Let’s get rid of the port-channel interface first, if we don’t do this you’ll see an error when you try to change the channel-group mode on the interfaces. After a few seconds you’ll see the port-channel interface appear:
SW1# %LINK-3-UPDOWN: Interface Port-channel1, changed state to up
SW2# %LINK-3-UPDOWN: Interface Port-channel1, changed state to up
After changing the configuration we see the port-channel1 going up. Problem solved!
Lesson learned: Make sure you use the same EtherChannel mode (PaGP or LACP) on both sides.
PaGP / LACP Negotiation not working
Same topology, different problem:
Once again the Etherchannel is down:
SW1#show ip interface brief | include Port
Port-channel1 unassigned YES unset down down
SW2#show ip interface brief | include Port
Port-channel1 unassigned YES unset down down
We can verify that the port-channel interface exists but it’s down on both sides. Let’s check the Etherchannel configuration:
Hi Rene,
Can you point to any material on L2CP? It would be great if you have any documents on the same?
Regards,
Ananth
Hello Ananth Maruti
Currently there is no post concerning L2CP. However, until Rene gets something up and running concerning L2CP, you can take a look at this:
https://www.cisco.com/c/en/us/td/docs/wireless/asr_901s/scg/b_scg_for_asr901s/b_scg_for_asr901s_chapter_0100000.pdf
This document desscribes L2CP configuration for the ASR 901.
I hope this has been helpful!
Laz
Hi,
I had some questions concerning the port-channel load-balancing based on dst-ip | dst-mac | src-dst-ip | src-dst-mac | src-ip | src-mac. I was wondering if you could explain that a little further for me.
also have question on clear error on the port channel and things of that nature.
thanks again for a great topic.
Hello Christopher
The port channel load balancing feature that you are referring to is the
port-channel load-balance
method command. This command sets the load distribution method that will be used to distribute traffic among the ports in the bundle.The available methods are the following:
* dst-ip—Load distribution on the destination IP address
... Continue reading in our forum* dst-mac—Load distribution on the destination MAC address
* dst-port—Load distribution on the destination TCP/UDP port
* src-dst-ip—Load distribution on the source XOR destination IP address
* src-dst-mac—Load distri
thank you for the info!!
I didn’t find the command to clear any port channel error though. Any ideas ?