3. 端口基本配置
端口基本配置的内容包括速率、全双工模式和端口描述。
配置策略
在配置接口速度和双工模式时,应当遵循以下配置策略。
快速以太网端口( 100 Mbps)支持所有速率和双工模式选项。
千兆位以太网( 1 000 Mbps)端口支持所有速率选项和所有双工选项(自动、半双工
和全双工)。不过,在 1000 Mbps 速率上运行的千兆位以太网端口不支持半双工模式。
如果连接的两端均支持自适应,强烈推荐采用默认的 auto 设置,使其自动协商,避
免可能由于速率或双工模式配置错误导致的链路失败。
如果连接中只有一端支持自适应,应当在两个接口都配置双工和相同速率,而不要
在支持自适应的一端使用 auto 设置。
配置 10 Gbps 以太网接口,不能手工配置速率和双工模式,也不支持 IP 电话的
Auto-QoS。
当 10 Gbps 模块端口被配置为 SPAN 或 RSPAN 目的端口时,链路速率会下降。
支持最多 2 个跨堆叠的 10 Gbps 模块创建 EtherChannel。
配置过程
① 进入全局配置模式。
Switch# configure terminal
② 选择欲配置的端口,进入接口配置模式。
Switch(config)# interface interface_id
③ 设置接口速率。 1000 和 auto 关键字只对 1000Base-T 端口有效;光纤 GBIC/SFP 模块
端口只能工作于 1000 Mbps; Nonegotiate 关键字只对 GBIC/SFP 端口有效。
Switch(config-if)# speed [10 | 100 | 1000 | auto | nonegotiate]
④ 设置双工模式。 1000 Mbps 端口和插槽只能工作于全双工模式; duplex 关键字对
GBIC/SFP 端口和 1000Base-T 端口无效。
Switch(config-if)# duplex [auto | full | half]
⑤ 在接口启用自动翻转( Auto-MDIX)。自动翻转支持所有的 100Base-TX 和 1000Base-T
接口,但是,不支持光纤 SFP 模块。在配置自动翻转前,应当将接口的速率和双工模式都设
置为 auto。
Switch(config-if)# mdix auto
启用自动翻转后,端口将根据对端所连接的设备自动选择和切换连接方式,因此,即使对端连接至交换机,也不必再使用交叉线。不过,只有新型交换机(如Catalyst 2960/3560/3750)才支持该功能。
⑥ 为端口指定描述文字,可以直观地了解该端口所连接的设备(如 Connect to liuxh 或
Connect to xiaolf),从而便于进行配置和管理。最多允许 240 个字符。
Switch(config-if)# description string
⑦ 返回特权配置模式。
Switch(config-if)# end
⑧ 显示接口状态和文字描述。
Switch# show interfaces interface_id
Switch# show interfaces interface_id description
⑨ 保存配置。
Switch# copy running-config startup-config
4. 配置端口组
许多端口的配置都完全相同。分别配置一个个端口既太过繁琐,又容易出错。将若干端
口定义成一个端口组后,只需设置该端口组,所包含的端口即可拥有相同的配置。
指定端口范围
① 进入全局配置模式。
Switch# configure terminal
② 选择欲配置的端口范围,进入接口配置模式。
Switch(config)# interface range interface-range
③ 键入 CLI 命令,将对所有指定的端口生效。
④ 返回特权配置模式。
Switch(config-if)# end
⑤ 显示当前运行的配置。
Switch# show running-config
⑥ 保存配置。
Switch# copy running-config startup-config
在指定端口范围时,注意以下几个方面的问题。
有效的端口范围
vlan vlan_id: VLAN ID 的取值范围为 1~1005( SI 版软件),或 1~4094( EI 版软件)。
fastethernet slot/{first port} – {last port}: slot 的值为 0。
gigabitethernet slot/{first port} – {last port}: slot 的值为 0。
port-channel port-channel-number – port-channel-number: port-channel-number 的取值范围
为 1~6。
连字符
连续的端口号可以在起止端口号间使用连字符表示。不过,必须在连字符“ -”的前后都
添加一个空格。例如, fastethernet 0/1 – 5 是正确的,而 fastethernet 0/1-5 则是错误的。
端口类型
端口组内的所有端口都必须是相同类型的,或者全部为 Fast Ethernet 端口、 Gigabit Ethernet
端口、 TenGigabit Ethernet 端口、 EtherChannel 端口,或者全部为 VLAN。
定义端口组宏
如果需要频繁地配置某个端口组,可以将该端口组设置为端口组宏,针对该宏所作的设
置,将应用至每个端口。
① 进入全局配置模式。
Switch# configure terminal
② 为指定的若干端口定义端口组宏名称,并将其保存在 NVRAM 中。宏名称最大为 32
个字符。一个宏最多可以使用 5 个逗号,来指定端口范围,并且不需要在逗号之间加入空格。
不过,每个端口组都必须由相同类型的端口组成。
Switch(config)# define interface-range macro_name interface-range
③ 使用宏名称选择被配置的端口组。保存的用于指定端口范围的宏称为宏名称。然后,
即可使用 CLI 命令对这些端口进行配置,命令将对指定的所有端口生效。
Switch(config)# interface range macro macro_name
④ 返回特权配置模式。
Switch(config-if)# end
⑤ 显示当前运行的配置。
Switch# show running-config
⑥ 保存配置。
Switch# copy running-config startup-config
6. 宕掉并重启接口
当接口由于某种原因出错时,可以将端口宕掉重新启用一下,以恢复其可用性。当然,
也可直接使用 no shutdown 接口配置命令启用已经宕掉的端口。
① 进入全局配置模式。
Switch# configure terminal
② 指定欲配置的接口。
Switch(config)# interface interface_id
③ 宕掉( down)接口。
Switch(config-if)# shutdown
④ 重新启用端口。
Switch(config-if)# no shutdown
⑤ 返回特权配置模式。
Switch(config-if)# end
⑥ 查看指定接口当前状态。
Switch# show interface interface_id
⑦ 保存配置。
Switch# copy running-config startup-config
6.5.2 配置 PortFast
Portfast 快速端口是 Cisco Catalyst 交换机的一个特有功能,能使交换机或中继端口跳过侦
听学习状态而进入 STP 转发状态,在基于 IOS 交换机上, PortFast 只能用于连接到终端工作
站的接入端口上。
PortFast 通常只被应用于接入交换机。如果在其他网络设备(如交换机)连接上启用 PortFast,将可能在冗余链路上形成网络环,从而导致网络瘫痪。
1. PortFast 简介
为了避免网络中存在拓扑环,从而导致网络瘫痪,可网管交换机默认状态下都启用生成树协议。这样,即使网络中存在环路,也会只保留一条路径,而自动切断其他链路。所以,当交换机在加电启动时,各端口需依次进入监听、学习和转发(或阻塞)状态。在监听和学习状态中,不能进行信息的转发。
然而,当在那些直接连接至终端(普通客户端、网络服务器、网络打印机等)的交换机端口上使用 PortFast 时(如图 6-1 所示), Spanning-Tree PortFast 将使端口绕过监听和学习阶段,立即进入 Spanning-Tree 转发状态,避免了端口由监听和学习状态向转发状态过渡的等待。
当交换机检测到链路,端口就进入转发状态(插电缆后的 2 s)。如果端口检测到一个环路,同时又启用了 PortFast 功能,那么,它将进入阻塞状态。不过, PortFast 只在端口初始化的时候才生效。如果端口由于某种原因又被迫进入阻塞状态,随后又需要回到转发状态,仍然要经过正常的侦听。
PortFast 仅仅让端口在网络环境变化的情况下直接进入转发状态,端口仍然运行 STP 协议,所以,如果检测到环路,端口仍将由转发状态变成阻塞状态。

2. 配置 PortFast
当交换机运行 PVST+、 rapid PVST+或 MSTP 时,即可在接口应用 PortFast,以实现计算
机和其他终端设备的快速接入。
① 进入配置模式。
Switch# configure terminal
② 选择欲配置的接口或接口范围。
Switch(config)# interface interface_id
或者
Switch(config)# interface range interface-range
③ 在直接连接至计算机的端口上启用 Port Fast。指定 trunk 关键字,可以在 Trunk 端口启
用 Port Fast。默认状态下,所有端口都禁用 Port Fast。
Switch(config-if)# spanning-tree portfast [trunk ]
④ 返回特权配置模式。
Switch(config)# end
⑤ 校验配置。
Switch# show spanning-tree interface interface_id portfast
⑥ 保存配置。
Switch# copy running-config startup-config
使用 spanning-tree portfast default 全局配置命令,可以在所有非 Trunk 端口上都启用 PortFast 功能。使用 spanning-tree portfast disable 接口配置命令,可以禁用 Port Fast 功能。
另外,也可以在指定的 VLAN 内禁用 spanning-tree,从而使所有端口立即进入转发状态。
操作如下:
① 进入配置模式。
Switch# configure terminal
② 选择欲配置的接口。
Switch(config)# no spanning-tree vlan vlan_id
③ 保存配置。
Switch# copy running-config startup-config
Portfast 可以应用于所有单独的端口,也就是说,当某个端口启用 Portfast时,不会影响到其他端口。而禁用 Spanning Tree,则将在整个 VLAN 中的所有端口上都禁用生成树,从而不能在整个 VLAN 中有任何冗余链接,否则将产生灾难性的后果。
6.5.3 配置 UplinkFast
STP 虽然确保了在拓扑变化的情况下没有环路产生,但是收敛速度太慢,对于一些实时或对带宽敏感的网络应用是不能接受的。 STP 收敛速度慢的原因是收敛算法需要花时间确定一条可替代的链路,默认时间是 50 s,即 20 s(阻塞→侦听)+ 15 s(侦听→学习)+ 15 s (学习→转发)。解决的方法是一旦发现了线路宕掉,马上将阻塞的端口切换到转发,不必再经历侦听和学习阶段,这就是 UplinkFast。 UplinkFast 切换时间可以在 2~ 4 s 范围内。UplinkFast 被设计应用于接入层交换机,使用两条上行链路连接到分布层,其中一条是活跃链路,而另一条则是冗余链路。
1. UplinkFast 简介
在分层网络环境中,交换机被划分为不同的组,即核心(或称骨干)交换机、汇聚(或称分布)交换机和访问(或称接入)交换机。图 6-2 所示为在复杂网络中,分布交换机和访问交换机都拥有冗余链接,并借助 STP 阻塞防止生成环路。
交换机失去连接,将开始使用备份路径, STP 将选择一个新的端口。当启用 UplinkFast后,在交换机或连接失败后,可以在 STP 重新配置的过程,加快选择新根端口的速度。根端口将立即过度到转发状态,而不再像普通 STP 那样,需要经过侦听和学习状态。
当 STP 重新配置新的根端口时,其他接口以多播包泛洪网络,该接口上的每个地址都将被学习。可以通过设置 max-update-rate 参数[默认值为 150 PPS(包每秒)]限制多播传输。然而,如果键入 0,状态学习帧将不能生成,在连接失败后 STP 收敛将更慢。
UplinkFast 在直连链路失败后提供快速收敛,并且借助 Uplink(上行)组在冗余二层链路间实现负载分担。 Uplink 组是一个二层接口,仅用于数据转发。具体来说, Uplink 组由根端口(处于转发状态)和阻塞端口组成,自我循环端口除外。 Uplink 组为失败的转发连接提供了一条备份路径。

图 6-3 所示为没有连接失败时的拓扑结构。根交换机 Switch A 借助链路 L1 直接连接到Switch B,并通过链路 L2 直接连接到交换机 Switch C。交换机 Switch C 上直接连接 Switch B的二层接口处于禁用状态。

当 Switch C 察觉到连接根端口的活跃链路 L2(直连连接)失败后, UplinkFast 将解除 Switch C 交换机的阻塞端口,并直接转换至转发状态(如图 6-4 所示),而忽略掉侦听、学习状态。状态改变完成通常只需 1~5 s,因此,大致可节约 30 s 的延迟。主要用于接入层,一条是上行链路,一条是冗余链路的拓扑中。

一个 UplinkFast 组由根端口和除自环端口之外的一组阻断端口组成,上行链路使交换机上的一个阻断端口几乎立刻进行转发。很重要的一点就是, UplinkFast 只能配置在接入层交换机上,因为从根端口到其非指定备份端口的快速转发只能在生成树拓扑结构的根端口上完成。
可见, UplinkFast 激活快速重新配置需要以下几个条件。
在交换机上必须启动了 UplinkFast 功能。
至少有一个处于阻塞的端口(即有冗余链路)。
链路失效必须发生在根端口上。
启用 UplinkFast 后,所有 VLAN 的交换机优先级都将被设置为 49152。如果将路径开销值修改为小于 3000,并启用 UplinkFast 或者 UplinkFast 已经被启用,所有接口和 VLAN Trunk的路径开销都将增加 3000(如果将路径开销设置为 3000 或以上,将不会被修改)。修改交换机优先级和路径开销将减少交换机改变为根交换机的机会。