同时将企业网络中的所有思科交换机生成树模式从PVST+ 都转换为多生成树 (MST)很困难。由于具有向后兼容性,因此可以分阶段转换它。
实现这种方法可以在预定维护窗口中实施更改,原因是重新配置生成树会中断数据流。启用MST时,也会启用RSTP。生成树 uplinkfast 和 backbonefast 功能是 PVST+ 功能,由于这些功能是在 RSTP 中生成的,而 MST 依赖于 RSTP,因此在启用 MST 时将禁用这些功能。
在迁移中,可以删除 IOS 中的这些命令。在 CatOS backbonefast 和 uplinkfast 中,系统会自动从配置中清除命令,但 Portfast、bpduguard、bpdufilter、根防护和环路防护等功能的配置也适用于 MST 模式。这些功能在 MST 模式下的用法与在 PVST+ 模式下相同。如果已在 PVST+ 模式下启用了这些功能,则这些功能在迁移到 MST 模式后将保持活动状态。在配置 MST 时,请遵循以下指南和限制:
迁移到 802.1s/w 的第一步是正确识别点对点端口和边缘端口。确保需要进行快速转换的所有交换机对交换机链路都是全双工的。边缘端口可通过 Portfast 功能进行定义。
选择对网络中的所有交换机通用的配置名称和修订版号。建议将尽可能多的交换机置于单个区域中;将网络划分为单独的区域是不利的。
请仔细决定交换网络中需要的实例数目,并牢记实例将转换为逻辑拓扑。避免将任何 VLAN 映射到实例 0 上。决定要将哪些 VLAN 映射到这些实例上,并为每个实例仔细选择根和备份根。
确保中继传输映射到实例的所有 VLAN,或根本不传输此实例的任何 VLAN。
MST 可以在每个端口上与运行 PVST+ 的传统网桥交互,因此如果清楚了解交互作用,混合两种类型的网桥就不是什么问题。始终尝试将 CST 和 IST 的根保持在区域内部。如果通过中继与 PVST+ 网桥交互,请确保 MST 网桥是该中继允许的所有 VLAN 的根。请勿使用 PVST 网桥作为 CST 的根。
确保所有 PVST 生成树根网桥的优先级低于(数字上更高)CST 根网桥。
请勿对任何 PVST 网桥中的 VLAN 禁用生成树。
请勿使用接入链路连接交换机,因为接入链路可以对 VLAN 进行分区。
必须在维护窗口中完成涉及大量当前或新的逻辑 VLAN 端口的任何 MST 配置,这是因为整个 MST 数据库会针对任何增量更改(例如向实例添加新的 VLAN 或在实例中移动 VLAN)重新初始化。
拓扑图
在本示例中,园区网络具有一个名为 region1 的 MST 区域以及两个实例:MST1(数据 VLAN 10、30 和 100)和 MST2(语音 VLAN 20、40 和 200)。可以看到 MST 只运行两个实例,但 PVST+ 运行六个实例。Distribution1 被选择为 CIST 区域根。这意味着 Distribution1 是 IST0 的根。为了按照该图对网络中的流量进行负载均衡,将 Distribution1 配置为 MST1(数据 VLAN 的实例)的根,将 MST2 配置为 MST2(语音 VLAN 的实例)的根。
首先需要迁移核心,然后逐步开始处理接入交换机。在更改生成树模式之前,配置cisco交换机上的 MST 配置。然后,将 STP 类型更改为 MST。在本示例中,按以下顺序进行迁移:
Distribution1 和 Distribution2
Services1 和 Services2
Access1
Access2
Distribution1 和 Distribution2 迁移:
!--- Distribution1 configuration: Distribution1(config)#spanning-tree mst configuration Distribution1(config-mst)#name region1 Distribution1(config-mst)#revision 10 Distribution1(config-mst)#instance 1 vlan 10, 30, 100 Distribution1(config-mst)#instance 2 vlan 20, 40, 200 Distribution1(config-mst)#exit Distribution1(config)#spanning-tree mst 0-1 root primary Distribution1(config)#spanning-tree mst 2 root secondary !--- Distribution2 configuration: Distribution2(config)#spanning-tree mst configuration Distribution2(config-mst)#name region1 Distribution2(config-mst)#revision 10 Distribution2(config-mst)#instance 1 vlan 10, 30, 100 Distribution2(config-mst)#instance 2 vlan 20, 40, 200 Distribution2(config-mst)#exit Distribution2(config)#spanning-tree mst 2 root primary Distribution2(config)#spanning-tree mst 0-1 root secondary !--- Make sure that trunks carry all the VLANs that are mapped to an instance. Distribution1(config)#interface FastEthernet1/0/1 Distribution1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Distribution1(config)#interface FastEthernet1/0/3 Distribution1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Distribution1(config)#interface FastEthernet1/0/5 Distribution1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Distribution1(config)#interface FastEthernet1/0/23 Distribution1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Distribution1(config)#interface FastEthernet1/0/24 Distribution1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 Distribution2(config)#interface FastEthernet1/0/2 Distribution2(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Distribution2(config)#interface FastEthernet1/0/4 Distribution2(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Distribution2(config)#interface FastEthernet1/0/6 Distribution2(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Distribution2(config)#interface FastEthernet1/0/23 Distribution2(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Distribution2(config)#interface FastEthernet1/0/24 Distribution2(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 !--- STP mode conversion. Distribution1(config)#spanning-tree mode mst Distribution2(config)#spanning-tree mode mst !--- MST tuning - to load balance data and voice VLAN traffic. Distribution2(config)#interface FastEthernet1/0/24 Distribution2(config-if)#spanning-tree mst 2 port-priority 64 !--- PVST+ cleanup. Distribution1(config)#no spanning-tree backbonefast Distribution2(config)#no spanning-tree backbonefast Distribution2(config)#interface FastEthernet1/0/24 Distribution2(config-if)#no spanning-tree vlan 20,40,200 port-priority 64
注意: 建议手动设置 MST0 根。在本示例中,由于选择 Distribution1 作为 MST0 根,因此 Distribution1 成为 CIST 根。
现在,网络采用了混合配置,可以按照下图来表示:
Distribution1 和 Distribution2 位于 MST region1 中,PVST+ 交换机将 region1 视为单个网桥。图 2 中显示了重新收敛后的数据流。您仍然可以按照图 1 调整 PVST+(生成树 VLAN X 成本)交换机,以便对数据和语音流量进行负载均衡。在根据步骤 2 至 4 迁移所有其他交换机之后,将获得基于图 1 的最终生成树拓扑。
Services1 和 Services2 迁移:
!--- Services1 configuration: Services1(config)#spanning-tree mst configuration Services1(config-mst)#name region1 Services1(config-mst)#revision 10 Services1(config-mst)#instance 1 vlan 10, 30, 100 Services1(config-mst)#instance 2 vlan 20, 40, 200 Services1(config-mst)#exit !--- Services2 configuration: Services2(config)#spanning-tree mst configuration Services2(config-mst)#name region1 Services2(config-mst)#revision 10 Services2(config-mst)#instance 1 vlan 10, 30, 100 Services2(config-mst)#instance 2 vlan 20, 40, 200 Services2(config-mst)#exit !--- Make sure that trunks carry all the !--- VLANs that are mapped to an instance. Services1(config)#interface FastEthernet0/5 Services1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Services1(config)#interface FastEthernet0/47 Services1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Services1(config)#interface FastEthernet0/48 Services1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Services2(config)#interface FastEthernet0/6 Services2(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Services2(config)#interface FastEthernet0/47 Services2(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Services2(config)#interface FastEthernet0/48 Services2(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 !--- STP Mode conversion: Services1(config)#spanning-tree mode mst Services2(config)#spanning-tree mode mst !--- MST tuning - to load balance data and voice VLAN traffic: Services1(config)#interface fastEthernet 0/46 Services1(config-if)#spanning-tree mst 2 cost 200000 Services1(config-if)#exit Services1(config)#interface fastEthernet 0/47 Services1(config-if)#spanning-tree mst 2 cost 100000 Services1(config-if)#exit Services2(config)#interface FastEthernet 0/6 Services2(config-if)#spanning-tree mst 1 cost 500000 Services2(config-if)#exit !--- PVST+ cleanup: Services1(config)#no spanning-tree uplinkfast Services1(config)#no spanning-tree backbonefast Services1(config)#interface FastEthernet0/5 Services1(config-if)#no spanning-tree vlan 100 cost 18 Services1(config-if)#exit Services2(config)#no spanning-tree uplinkfast Services2(config)#no spanning-tree backbonefast Services2(config)#interface FastEthernet0/6 Services2(config-if)#no spanning-tree vlan 200 cost 18 Services2(config-if)#exit Services2(config)#interface FastEthernet0/48 Services2(config-if)#no spanning-tree vlan 200 port-priority 64 Services2(config-if)#exit
Access1 迁移:
!--- Access1 configuration: Access1(config)#spanning-tree mst configuration Access1(config-mst)#name region1 Access1(config-mst)#revision 10 Access1(config-mst)#instance 1 vlan 10, 30, 100 Access1(config-mst)#instance 2 vlan 20, 40, 200 Access1(config-mst)#exit !--- Make sure that trunks carry all the VLANs that are mapped to an instance. Access1(config)#interface FastEthernet0/1 Access1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 ! Access1(config)#interface FastEthernet0/2 Access1(config-if)#switchport trunk allowed vlan 10,20,30,40,100,200 !--- STP mode conversion: Access1(config)#spanning-tree mode mst !--- PVST+ cleanup: Access1(config)#no spanning-tree uplinkfast Access1(config)#no spanning-tree backbonefast
Access2 迁移:
!--- Access2 configuration: Access2> (enable) set spantree mst config name region1 revision 10 Edit Buffer modified. Use 'set spantree mst config commit' to apply the changes Access2> (enable) set spantree mst 1 vlan 10,30,100 Edit Buffer modified. Use 'set spantree mst config commit' to apply the changes Access2> (enable) set spantree mst 2 vlan 20,40,200 Edit Buffer modified. Use 'set spantree mst config commit' to apply the changes Access2> (enable) set spantree mst config commit !--- Ensure that trunks carry all the VLANs that are mapped to an instance: Access2> (enable)set trunk 3/3 on dot1q 10,20,30,40,100,200 Access2> (enable)set trunk 3/4 on dot1q 10,20,30,40,100,200 STP mode conversion Access2> (enable) set spantree mode mst PVST+ database cleaned up. Spantree mode set to MST. !--- Backbonefast and uplinkfast configurations are cleaned up automatically.
Copyright ©2017-2021 武汉市朗联科技有限公司 鄂ICP备案号17020357