This document offers a sample configuration and command structure for the setup of an EtherChannel link that is a trunk link between a Catalyst Layer 2 (L2) fixed configuration switch, which includes the 2950/2955/2970/2940/2900XL/3500XL switches, and a Catalyst 4500/4000 switch that runs Catalyst OS (CatOS). You can configure the Catalyst L2 fixed configuration switch with any Catalyst 4500/4000, 5500/5000, or 6500/6000 series switch that runs CatOS in this scenario to obtain the same results. With the popularity of Fast Ethernet in current networks, the sample configuration uses Fast Ethernet. The sample bundles two Fast Ethernet ports from each of the switches into a Fast EtherChannel (FEC) and configures IEEE 802.1Q (dot1q) trunking on top of the FEC.
This document uses the same term, EtherChannel, to refer to FEC, Gigabit EtherChannel (GEC), port channel, channel, and port group. For further details on how to configure EtherChannel on the switches, refer to these documents:
Configuring Fast EtherChannel and Gigabit EtherChannel on Catalyst 4000 switches
Configuring EtherChannels on Catalyst 2950 switches
Configuring EtherChannels on Catalyst 2950/2955 switches
Configuring EtherChannels on Catalyst 2970 switches
Configuring EtherChannels on Catalyst 2940 switches
Configuring EtherChannel Between Catalyst 2900XL/3500XL Switches and CatOS Switches
The information in this document is based on these software and hardware versions:
Catalyst 2950 that runs Cisco IOS® Software Release 12.1(6)EA2c
Catalyst 2955 that runs Cisco IOS Software Release 12.1(12c)EA1
Catalyst 2940 that runs Cisco IOS Software Release 12.1(22)EA1
Catalyst 2970 that runs Cisco IOS Software Release 12.1(19)EA1c
Catalyst 2900XL/3500XL that runs Cisco IOS Software Release 12.0(5)WC9
Catalyst 4000 that runs CatOS version 8.4.1
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
For more information on document conventions, refer to the Cisco Technical Tips Conventions.
When you use a Catalyst L2 fixed configuration switch and any Catalyst 4500/4000 family product that runs CatOS (Catalyst 4003/4006/2948G/2980G), keep in mind that the switches only support dot1q trunking encapsulation. Other Catalyst platforms support both dot1q and Inter-Switch Link Protocol (ISL). While dot1q is an IEEE standard, ISL is proprietary to Cisco. Only Cisco hardware can support ISL trunking encapsulation. If you use other Cisco switching platforms, such as the Catalyst 5500/5000 or Catalyst 6500/6000, and need to determine which trunking method has support, issue this command:
show port capabilities mod/port
For more information on a specific port and what capabilities the specific port has (such as dot1q, ISL, and port channel), refer to:
EtherChannels have automatic configuration with either Port Aggregation Protocol (PAgP) or Link Aggregation Control Protocol (LACP). You can also configure EtherChannels manually. PAgP is a Cisco-proprietary protocol that you can only run on Cisco switches and on those switches that licensed vendors license to support PAgP. IEEE 802.3ad defines LACP. LACP allows Cisco switches to manage Ethernet channels between switches that conform to the 802.3ad protocol. You can configure up to 16 ports to form a channel. Eight of the ports are in active mode and the other eight are in standby mode. When any of the active ports fail, a standby port becomes active. Standby mode works only for LACP, not for PAgP.
If you use one of these protocols, a switch learns the identity of partners able to support either PAgP or LACP and learns the capabilities of each interface. The switch then dynamically groups interfaces with similar configurations into a single logical link (channel or aggregate port); the switch bases these interface groups on hardware, administrative, and port parameter constraints. For example, PAgP groups the interfaces with the same speed, duplex mode, native VLAN, VLAN range, and trunking status and type. After PAgP groups the links into an EtherChannel, PAgP adds the group to the spanning tree as a single switch port.
Switch | LACP Support | Minimum LACP Version with Support | PAgP Support | Minimum PAgP Version with Support |
---|---|---|---|---|
Catalyst 2940 | Yes | Cisco IOS Software Release 12.1(19)EA1 | Yes | Cisco IOS Software Release 12.1(13)AY |
Catalyst 2950 | Yes | Cisco IOS Software Release 12.1(14)EA1 | Yes | Cisco IOS Software Release 12.0(5.2)WC(1) |
Catalyst 2955 | Yes | Cisco IOS Software Release 12.1(14)EA1 | Yes | Cisco IOS Software Release 12.1(12c)EA1 |
Catalyst 2970 | Yes | Cisco IOS Software Release 12.2(18)SE | Yes | Cisco IOS Software Release 12.1(11)AX |
Catalyst 2900XL | No | — | No | — |
Catalyst 3500XL | No | — | No | — |
This section lists the user-configurable EtherChannel modes for the channel-group interface configuration command. Switch interfaces exchange PAgP packets only with partner interfaces with the auto or desirable mode configuration. Switch interfaces exchange LACP packets only with partner interfaces with the active or passive mode configuration. Interfaces with the on mode configuration do not exchange PAgP or LACP packets.
active—Places an interface into an active negotiation state, in which the interface starts negotiations with other interfaces through the send of LACP packets.
auto—Places an interface into a passive negotiation state, in which the interface responds to PAgP packets that the interface receives but does not start PAgP packet negotiation. This setting minimizes the transmission of PAgP packets.
desirable—Places an interface into an active negotiation state, in which the interface starts negotiations with other interfaces through the send of PAgP packets.
on—Forces the interface into an EtherChannel without PAgP or LACP. With the on mode, a usable EtherChannel exists only when an interface group in the on mode has a connection to another interface group in the on mode.
passive—Places an interface into a passive negotiation state, in which the interface responds to LACP packets that the interface receives, but does not start LACP packet negotiation. This setting minimizes the transmission of LACP packets.
There are only three valid combinations to run the LACP link aggregate, as this table shows:
Switch | Switch | Comments |
---|---|---|
active | active | Recommended. |
active | passive | Link aggregation occurs if negotiation is successful. |
on | on | Link aggregation occurs without LACP. Although this works, this combination is not recommended. |
Note: By default, with the configuration of an LACP channel, the LACP channel mode is passive.
PAgP aids in the automatic creation of FEC links. PAgP packets transmit between FEC-capable ports to negotiate the formation of a channel. Some restrictions have been deliberately introduced into PAgP. The restrictions are:
PAgP does not form a bundle on ports with configuration for dynamic VLANs. PAgP requires that all ports in the channel belong to the same VLAN or that the ports have trunk port configurations. When a bundle already exists and you modify the VLAN of a port, all ports in the bundle change to match that VLAN.
PAgP does not group ports that operate at different speeds or port duplex. If you change speed and duplex when a bundle exists, PAgP changes the port speed and duplex for all ports in the bundle.
PAgP modes are off, auto, desirable, and on. Only the combinations auto-desirable, desirable-desirable, and on-on allow the formation of a channel. If a device on one side of the channel does not support PAgP, such as a router, the device on the other side must have PAgP set to on. Catalyst 2950 switches support PAgP for channel negotiation with Cisco IOS Software Release 12.1(6)EA2 or later. Cisco IOS Software Release 12.0 supports only static configuration. All Catalyst switches that run CatOS support PAgP protocol channel negotiation.
There are different types of trunking protocols. If a port can become a trunk, it may also have the ability to trunk automatically. In some cases, the port may even be able to negotiate what type of trunking to use on the port. This ability to negotiate the trunking method with the other device has the name Dynamic Trunking Protocol (DTP).
Catalyst 2950 switches support DTP for dynamic trunking with Cisco IOS Software Release 12.1(6)EA2 or later. Cisco IOS Software Release 12.0 supports only static configuration. All Catalyst switches that run CatOS support DTP.
In this section, you are presented with the information to configure the features described in this document.
Note: To find additional information on the commands used in this document, use the Command Lookup Tool (registered customers only) .
This document uses this network setup:
This document uses these configurations:
LACP on Catalyst L2 fixed configuration switch that runs Cisco IOS Software
PAgP on Catalyst L2 fixed configuration switch that runs Cisco IOS Software
Catalyst 4000 |
---|
Cat4003 (enable) show channelprotocol Channel Module Protocol ------- -------- 2 PAGP Cat4003 (enable) !--- By default, all ports on a Catalyst 4500/4000 use channel protocol PAgP. !--- So, to run LACP, you must change the channel protocol to LACP. On switches !--- that run CatOS, you can only change the channel mode per module. In this !--- example, the command set channelprotocol lacp module_number !--- changes the channel mode for slot 2. Use the show channelprotocol command to !--- verify the changes. Cat4003 (enable) set channelprotocol lacp 2 Mod 2 is set to LACP protocol. Cat4003 (enable) Cat4003 (enable) set port lacp-channel 2/1-2 Port(s) 2/1-2 are assigned to admin key 80. Cat4003 (enable) !--- There is a parameter exchange in the LACP packet. The parameter is !--- the admin key. A channel can only form between ports that have !--- the same admin key. In this example, both ports have assignment to the same group. !--- (The random assignment is admin key 80.) !--- Keep in mind that the admin key is only locally significant. In other words, !--- the admin key must be the same only for ports within the switch and is not a factor !--- between different switches. Cat4003 (enable) set port lacp-channel 2/1-2 mode active Port(s) 2/1-2 channel mode set to active. Cat4003 (enable) To form the channel change the LACP channel mode to active state on one or both of the sides. Cat4003 (enable) set trunk 2/1 desirable dot1q Port(s) 2/1-2 trunk mode set to desirable. Port(s) 2/1-2 trunk type set to dot1q. Cat4003 (enable) !--- Configure the ports to the desirable trunk mode that makes the ports actively !--- attempt to convert the link to a trunk link. The ports become trunk ports if !--- the neighbor ports are in on, desirable, or auto mode. Cat4003 (enable) show config This command shows non-default configurations only. Use 'show config all' to show both default and non-default configurations. ................. ............................. .. begin !--- Output suppressed. #channelprotocol set channelprotocol lacp 2 ! #port channel set port lacp-channel 2/1-2 80 ! !--- Output suppressed. #module 2 : 48-port 10/100/1000 Ethernet set trunk 2/1 desirable dot1q 1-1005,1025-4094 set trunk 2/2 desirable dot1q 1-1005,1025-4094 ! !--- Output suppressed. |
The configuration commands for the Catalyst L2 fixed configuration switch platforms are the same. To keep the document length reasonable, this document displays the configuration for just one of the platforms (Catalyst 2955). But tests of all the commands took place on all the Catalyst L2 fixed configuration switch platforms.
Catalyst L2 Fixed Configuration Switch |
---|
CAT2955# configure terminal Enter configuration commands, one per line. End with CNTL/Z. CAT2955(config)# interface fastethernet 0/9 CAT2955(config-if)# channel-group 1 mode active Creating a port-channel interface Port-channel 1 Assign the interface to a channel group, and specify the LACP mode. CAT2955(config-if)# 6d08h: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/9,changed state to down 6d08h: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/9,changed state to up 6d08h: %LINK-3-UPDOWN: Interface Port-channel1, changed state to up 6d08h: %LINEPROTO-5-UPDOWN: Line protocol on Interface Port-channel1,changed state to up CAT2955(config-if)# interface fastethernet 0/10 CAT2955(config-if)# channel-group 1 mode active CAT2955(config-if)# 6d08h: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/10,changed state to down 6d08h: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/10,changed state to up CAT2955(config-if)# interface port-channel 1 CAT2955(config-if)# switchport mode trunk Configuring the port channel interface to be a trunk pulls fa 0/9-10 in. CAT2955(config-if)# ^Z CAT2955# show run 6d08h: %SYS-5-CONFIG_I: Configured from console by consolerun Building configuration... !--- Output suppressed. ! interface Port-channel1 switchport mode trunk no ip address flowcontrol send off fcs-threshold 0 ! !--- Output suppressed. interface FastEthernet0/9 switchport mode trunk no ip address channel-group 1 mode active ! interface FastEthernet0/10 switchport mode trunk no ip address channel-group 1 mode active ! !--- Output suppressed. end CAT2955# |
Catalyst L2 Fixed Configuration Switch |
---|
5-2950# configure terminal Enter configuration commands, one per line. End with CNTL/Z. 5-2950(config)# interface fastethernet0/1 5-2950(config-if)# channel-group 1 mode desirable Creating a port-channel interface Port-channel1 !--- The software dynamically creates the port channel interface. 5-2950(config-if)# *Mar 16 13:50:56.185: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to down *Mar 16 13:50:57.013: %EC-5-BUNDLE: Interface Fa0/1 joined port-channel Po1 *Mar 16 13:50:58.053: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up *Mar 16 13:50:59.021: %LINK-3-UPDOWN: Interface Port-channel1, changed state to up *Mar 16 13:51:00.021: %LINEPROTO-5-UPDOWN: Line protocol on Interface Port-channel1, changed state to up 5-2950(config-if)# 5-2950(config)# interface fastethernet0/2 5-2950(config-if)# channel-group 1 mode desirable 5-2950(config-if)# 5-2950(config-if)# interface port-channel 1 !--- Configuration of the port channel interface to be a trunk !--- pulls in Fast Ethernet 0/1 and 0/2. 5-2950(config-if)# switchport mode trunk *Mar 14 15:31:13.428: %DTP-5-TRUNKPORTON: Port Fa0/1 has become dot1q trunk *Mar 14 15:31:14.880: %EC-5-BUNDLE: Interface Fa0/1 joined port-channel Po1 *Mar 14 15:31:14.908: %EC-5-UNBUNDLE: Interface Fa0/2 left the port-channel Po1 *Mar 14 15:31:14.944: %EC-5-BUNDLE: Interface Fa0/2 joined port-channel Po1 *Mar 14 15:31:15.908: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up 5-2950# show run Building configuration... Current configuration : 1608 bytes ! version 12.1 no service pad service timestamps debug uptime service timestamps log datetime msec localtime no service password-encryption ! hostname 5-2950 ! ! clock timezone PST -8 ip subnet-zero no ip finger no ip domain-lookup cluster enable SWITCH 0 ! ! ! interface Port-channel 1 !--- This is the port channel interface where you configure trunking that !--- the members of the channel group inherit. switchport mode trunk ! interface FastEthernet0/1 switchport mode trunk channel-group 1 mode desirable !--- Here, the channel group corresponds with interface port-channel 1. ! interface FastEthernet0/2 switchport mode trunk channel-group 1 mode desirable !--- Here, the channel group corresponds with interface port-channel 1. ! interface FastEthernet0/3 ! interface FastEthernet0/4 ! interface FastEthernet0/5 ! interface FastEthernet0/6 ! interface FastEthernet0/7 ! |
Catalyst 4000 Switch |
---|
Console> (enable) set port channel 2/19-20 mode desirable Port(s) 2/19-20 channel mode set to desirable. Console> (enable) 2003 Jan 08 11:40:14 %PAGP-5-PORTFROMSTP:Port 2/19 left bridge port 2/19 2003 Jan 08 11:40:14 %PAGP-5-PORTFROMSTP:Port 2/20 left bridge port 2/20 2003 Jan 08 11:40:18 %PAGP-5-PORTTOSTP:Port 2/19 joined bridge port 2/19 2003 Jan 08 11:40:18 %PAGP-5-PORTTOSTP:Port 2/20 joined bridge port 2/20 Console> (enable) set trunk 2/19 desirable !--- The set of the trunk on the first port of the channel !--- dynamically trunks all channel ports. Port(s) 2/19-20 trunk mode set to desirable. ! Console> (enable) !--- The dot1q trunk adopts the port VLAN assignment (VLAN 1 by default) !--- as the native VLAN. If this switch were a Catalyst 5500/5000 or 6500/6000 switch !--- (which also supports ISL trunking), you would specify dot1q encapsulation here. !--- The Catalyst 2950 only supports dot1q. |
This section provides information you can use to confirm your configuration is working properly.
Certain show commands are supported by the Output Interpreter Tool (registered customers only) , which allows you to view an analysis of show command output. The show commands on the L2 fixed configuration switch platforms are the same, but the output format may vary.
CAT2955# show etherchannel summary Flags: D - down P - in port-channel I - stand-alone s - suspended H - Hot-standby (LACP only) R - Layer3 S - Layer2 u - unsuitable for bundling U - in use f - failed to allocate aggregator d - default port Number of channel-groups in use: 1 Number of aggregators: 1 Group Port-channel Protocol Ports ------+-------------+-----------+----------------------------------------------- 1 Po1(SU) LACP Fa0/9(P) Fa0/10(Pd) CAT2955# CAT2955# show interfaces fastethernet 0/9 switchport Name: Fa0/9 Switchport: Enabled Administrative Mode: trunk Operational Mode: trunk (member of bundle Po1) Administrative Trunking Encapsulation: dot1q Operational Trunking Encapsulation: dot1q Negotiation of Trunking: On Access Mode VLAN: 1 (default) Trunking Native Mode VLAN: 1 (default) Administrative private-vlan host-association: none Administrative private-vlan mapping: none Operational private-vlan: none Trunking VLANs Enabled: ALL Pruning VLANs Enabled: 2-1001 Protected: false Voice VLAN: none (Inactive) Appliance trust: none
Cat4003 (enable) show lacp Channel Id Ports ----------- ----------------------------------------------- 417 2/1-2 Cat4003 (enable) show lacp-channel 417 Channel Ports Status Channel id Mode ------- ---------------------------------------------- ---------- -------------- 417 2/1-2 connected active Cat4003 (enable) Cat4003 (enable) show trunk * - indicates vtp domain mismatch # - indicates dot1q-all-tagged enabled on the port Port Mode Encapsulation Status Native vlan -------- ----------- ------------- ------------ ----------- 2/1 desirable dot1q trunking 1 2/2 desirable dot1q trunking 1 Port Vlans allowed on trunk -------- --------------------------------------------------------------------- 2/1 1-1005,1025-4094 2/2 1-1005,1025-4094 Port Vlans allowed and active in management domain -------- --------------------------------------------------------------------- 2/1 1,10 2/2 1,10 Port Vlans in spanning tree forwarding state and not pruned -------- --------------------------------------------------------------------- 2/1 1,10 2/2 1,10 Cat4003 (enable)
5-2950# show etherchannel summary Flags: D - down P - in port-channel I - stand-alone s - suspended R - Layer3 S - Layer2 U - port-channel in use Group Port-channel Ports -----+------------+----------------------------------------------------------- 1 Po6(SU) Fa0/1(P) Fa0/2(P) 5-2950# show interface fastethernet0/1 switchport Name: Fa0/1 Switchport: Enabled Administrative Mode: trunk Operational Mode: trunk (member of bundle Po6) Administrative Trunking Encapsulation: dot1q Operational Trunking Encapsulation: dot1q Negotiation of Trunking: On Access Mode VLAN: 1 (default) Trunking Native Mode VLAN: 1 (default) !--- This line shows that the trunk link is up. Trunking VLANs Enabled: ALL !--- This line shows that all VLANs trunk. Pruning VLANs Enabled: 2-1001 Protected: false Voice VLAN: none (Inactive) Appliance trust: none
Console> show port channel Port Status Channel Admin Ch Mode Group Id ----- ---------- -------------------- ----- ----- 2/19 connected desirable silent 174 815 2/20 connected desirable silent 174 815 ----- ---------- -------------------- ----- ----- Port Device-ID Port-ID Platform ----- ------------------------------- ------------------------- ---------------- 2/19 5-2950 Fa0/1 cisco WS-C2950-24 2/20 5-2950 Fa0/2 cisco WS-C2950-24 ----- ------------------------------- ------------------------- ---------------- Console> (enable) show trunk * - indicates vtp domain mismatch Port Mode Encapsulation Status Native vlan -------- ----------- ------------- ------------ ----------- 2/19 desirable dot1q trunking 1 2/20 desirable dot1q trunking 1 Port Vlans allowed on trunk -------- --------------------------------------------------------------------- 2/19 1-1005 2/20 1-1005 Port Vlans allowed and active in management domain -------- --------------------------------------------------------------------- 2/19 1,100,300,350,450 2/20 1,100,300,350,450 Port Vlans in spanning tree forwarding state and not pruned -------- --------------------------------------------------------------------- 2/19 1,100,300,350,450 2/20 1,100,300,350,450 Console> (enable)
There is currently no specific troubleshooting information available for this configuration.