本文档提供了一个用于设置 EtherChannel 链路的示例配置和命令结构,该链路将作为 Catalyst 第 2 层 (L2) 固定配置交换机(包括 2950/2955/2970/2940/2900XL/3500XL 交换机)和 Catalyst 4500/4000 交换机(运行 Catalyst OS (CatOS))之间的中继链路。 您可以使用此方案中运行 CatOS 的任意 Catalyst 4500/4000、5500/5000 或 6500/6000 系列交换机配置 Catalyst L2 固定配置交换机。由于当今网络中流行使用快速以太网,本示例配置将使用快速以太网。本示例将每个交换机的两个快速以太网端口绑定到快速以太通道 (FEC),并在 FEC 上配置 IEEE 802.1Q (dot1q) 中继。
本文档使用同一术语 EtherChannel 指代 FEC、Gigabit EtherChannel (GEC)、端口信道、信道和端口组。有关如何在交换机上配置 EtherChannel 的更多详细信息,请参阅以下文档:
本文档中的信息基于以下软件和硬件版本:
运行 Cisco IOS® 软件版本 12.1(6)EA2c 的 Catalyst 2950
运行 Cisco IOS 软件版本 12.1(12c)EA1 的 Catalyst 2955
运行 Cisco IOS 软件版本 12.1(22)EA1 的 Catalyst 2940
运行 Cisco IOS 软件版本 12.1(19)EA1c 的 Catalyst 2970
运行 Cisco IOS 软件版本 12.0(5)WC9 的 Catalyst 2900XL/3500XL
运行 CatOS 版本 8.4.1 的 Catalyst 4000
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
有关文件规则的更多信息请参见“ Cisco技术提示规则”。
使用 Catalyst L2 固定配置交换机和任意运行 CatOS (Catalyst 4003/4006/2948G/2980G) 的 Catalyst 4500/4000 系列产品时,请记住,这些交换机仅支持 dot1q 中继封装。其他 Catalyst 平台同时支持 dot1q 和交换机间链路协议 (ISL)。 dot1q 为 IEEE 标准,ISL 专属于 Cisco。只有 Cisco 硬件支持 ISL 中继封装。如果使用其他 Cisco 交换平台(如 Catalyst 5500/5000 或 Catalyst 6500/6000),并且无需确定哪种中继方法具有相应支持,请发出以下命令:
show port capabilities mod/port
有关特定端口和特定端口具有的功能(如 dot1q、ISL 和端口信道)的详细信息,请参阅:
EtherChannel 使用端口聚合协议 (PAgP) 或链路聚合控制协议 (LACP) 自动配置。 您也可以手动配置 EtherChannel。PAgP 是 Cisco 专有的协议,只能在 Cisco 交换机和许可供应商授权支持 PAgP 的交换机上运行。IEEE 802.3ad 定义了 LACP。LACP 允许 Cisco 交换机管理符合 802.3ad 协议的交换机之间的以太网信道。您可以配置最多 16 个端口以形成信道。八个端口处于主动模式,其他八个端口处于备用模式。如果任意主动端口有故障,则一个备用端口将激活。备用模式仅对 LACP 有效,对 PAgP 无效。
如果使用这些协议之一,交换机将了解能够支持 PAgP 或 LACP 的合作伙伴的身份,并了解每个接口的功能。然后,交换机将具有相似配置的接口动态组合到单个逻辑链路(信道或聚合端口)中;交换机以硬件、管理和端口参数约束作为这些接口组的依据。例如,PAgP 将具有相同的速度、全双工模式、本地 VLAN、VLAN 范围以及中继状态和类型的接口分组到一起。在 PAgP 将相应链路组合到 EtherChannel 中之后,PAgP 会将该组作为单个交换机端口添加到生成树中。
交换机 | LACP 支持 | 具有相应支持的最低 LACP 版本 | PAgP 支持 | 具有相应支持的最低 PAgP 版本 |
---|---|---|---|---|
Catalyst 2940 | Yes | Cisco IOS 软件版本 12.1(19)EA1 | Yes | Cisco IOS 软件版本 12.1(13)AY |
Catalyst 2950 | Yes | Cisco IOS 软件版本 12.1(14)EA1 | Yes | Cisco IOS 软件版本 12.0(5.2)WC(1) |
Catalyst 2955 | Yes | Cisco IOS 软件版本 12.1(14)EA1 | Yes | Cisco IOS 软件版本 12.1(12c)EA1 |
Catalyst 2970 | Yes | Cisco IOS 软件版本 12.2(18)SE | Yes | Cisco IOS 软件版本 12.1(11)AX |
Catalyst 2900XL | 无 | — | 无 | — |
Catalyst 3500XL | 无 | — | 无 | — |
此部分列出了 channel-group 接口配置命令的用户可配置 EtherChannel 模式。交换机接口仅与具有 auto 或 desirable 模式配置的合作伙伴接口交换 PAgP 数据包。交换机接口仅会与具有主动或被动模式配置的伙伴接口交换 LACP 数据包。具有 on 模式配置的接口不会交换 PAgP 或 LACP 数据包。
active - 将接口置于主动协商状态,在该状态下,接口通过发送 LACP 数据包开始与其他接口进行协商。
auto - 将接口置于被动协商状态,在该状态下,接口会响应所接收到的 PAgP 数据包,但不会开始 PAgP 数据包协商。该设置最大程度地减少了 PAgP 数据包的传输量。
desirable - 将接口置于主动协商状态,在该状态下,接口通过发送 PAgP 数据包开始与其他接口进行协商。
on - 强制接口成为 EtherChannel,而不交换 PAgP 或 LACP。在 on 模式中,仅当处于 on 模式的接口组与另一处于 on 模式的接口组相连时,才有可用的 EtherChannel。
被动 - 将接口置于被动协商状态,在该状态下,接口会响应接口接收到的 LACP 数据包,但不会开始 LACP 数据包协商。该设置最大程度地减少了 LACP 数据包的传输。
只有下列三种有效组合可运行 LACP 链路聚合,如下表所示:
交换机 | 交换机 | 备注 |
---|---|---|
主用 | 主用 | 推荐。 |
主用 | 被动 | 如果协商成功,则形成链路汇聚。 |
在 | 在 | 在没有 LACP 的情况下形成链路汇聚。虽然此组合有效,但建议不要使用。 |
注意:默认情况下,配置LACP信道时,LACP信道模式为被动模式。
PAgP 可帮助自动创建 FEC 链路。PAgP 数据包在支持 FEC 的端口之间传输以协商信道的构建。在 PAgP 中有意引入了一些限制。这些限制包括:
PAgP 不能在具有动态 VLAN 配置的端口上构建捆绑。PAgP 要求信道中的所有端口属于同一 VLAN 或者这些端口具有中继端口配置。如果捆绑已存在,并且将修改端口的 VLAN,则捆绑中的所有端口都将改变为与该 VLAN 匹配。
PAgP 不会对以不同速度或端口双工运行的端口进行分组。如果在存在某一捆绑时改变速度和双工,则 PAgP 会更改该捆绑中所有端口的端口速度和双工。
PAgP 模式包括 off、auto、desirable 和 on。只有 auto-desirable、desirable-desirable 和 on-on 组合才允许构建通道。如果信道某一端的设备不支持PAgP(如路由器),其他端的设备必须将PAgP设置为开。Catalyst 2950/2955 交换机支持 PAgP,可与 Cisco IOS 软件版本 12.1(6)EA2 或更高版本进行信道协商。Cisco IOS 软件版本 12.0 只支持静态配置。运行 CatOS 的所有 Catalyst 交换机都支持 PAgP 协议信道协商。
中继协议有多种不同的类型。如果端口可以作为中继,则它也可以自动中继。在某些情况下,该端口甚至可以协商要在端口上使用的中继类型。这种与其他设备协商中继方法的能力称为动态中继协议 (DTP)。
Catalyst 2950 交换机支持 DTP,可与 Cisco IOS 软件版本 12.1(6)EA2 或更高版本动态中继。Cisco IOS 软件版本 12.0 只支持静态配置。运行 CatOS 的所有 Catalyst 交换机都支持 DTP。
本部分提供有关如何配置本文档所述功能的信息。
注:要查找有关本文档中使用的命令的其他信息,请使用命令查找工具 (仅注册客户)。
本文档使用以下网络设置:
本文档使用以下配置:
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. |
Catalyst L2 固定配置交换机平台的配置命令相同。为了使文档保持合理长度,本文档仅显示了一个平台 (Catalyst 2955) 的配置。 但是在所有 Catalyst L2 固定配置交换机平台上对所有命令都进行了测试。
Catalyst L2 固定配置交换机 |
---|
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 固定配置交换机 |
---|
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 交换机 |
---|
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. |
本部分所提供的信息可用于确认您的配置是否正常工作。
命令输出解释程序工具(仅限注册用户)支持某些 show 命令,使用此工具可以查看对 show 命令输出的分析。 L2 固定配置交换机平台上的 show 命令相同,但输出格式可能不同。
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)
目前没有针对此配置的故障排除信息。