思科交换机 MSTP 配置实例


一、前言

MSTP 的全称是多生成树协议(Multiple Spanning Tree Protocol),它是目前最完美而且兼容性最好的公有生成树协议。

本文将介绍一些生成树相关的知识以及如何在思科交换机上使用 MSTP。


二、知识普及

2.1 传统生成树协议的缺陷

我们都知道,公有的 STP 和 RSTP 都只能在一台交换机上创建一个生成树实例(这个实例叫做 CST,即公用生成树)。

虽然这样可以节省交换机的系统资源,但由于冗余链路是完全不转发数据的,所以会造成严重的带宽浪费。

针对这一点,思科开发了 PVST+ 和 Rapid-PVST+ 两款私有的生成树协议。这两款生成树协议会为每一个 VLAN 创建一个生成树实例,每个 VLAN 也都会有自己独立的根桥。

这样做虽然不会浪费带宽资源,但是生成树实例数会随着 VLAN 数的的增加而增加。当交换机存在大量 VLAN 时,大量的系统资源都会被浪费在生成树的计算上。并且,PVST+ 和 Rapid-PVST+ 都只能用在思科设备上,兼容性差。

2.2 MSTP 简介

MSTP 是 IEEE 基于 RSTP,结合 Rapid-PVST+ 的优点开发的公有生成树协议。

MSTP 最大的特点是可以根据实际需要创建任意多个生成树实例,并且每个生成树实例都可以跟一个或多个 VLAN 绑定。

MSTP 完全消除了传统生成树协议的缺陷,并且还是公有协议。所以 MSTP 是目前主流的生成树协议。

MSTP 有域的概念,它可将整个运行 MSTP 的网络分为多个不同的域。域间使用的是公共生成树(CST),域内使用的是内部生成树(IST)。在公共生成树(CST)中,每个域都可看作是一台逻辑交换机,且不同域间只能通过实例 0 进行互操作。

MSTP 的架构如下图:

不过多域 MSTP 一般很少使用,基本上只用于支持 MSTP 的交换机与不支持 MSTP 交换机的互操作。

如果想让所有交换机都处在同一个域中,必须满足以下几点:
1. 所有交换机的域名必须相同。
2. 所有交换机的修订版本必须相同。
3. 所有交换机 VLAN 到实例的映射必须相同。

在默认情况下,交换机的所有 VLAN 都会被映射到实例 0 中。并且实例 0 不可被删除。


三、网络拓扑图及说明

如图,整网有 6 台交换机。现在要求 Switch1 做 VLAN 10、20、30 的根桥,Switch2 做 VLAN 40、50、60 的根桥。整网使用单域的 MSTP,域名为 cisco,修订版本为 1

下面只讲与 MSTP 相关的配置。


四、配置方法

4.1 Switch1

进入 MSTP 配置模式:

Switch1(config)#spanning-tree mst configuration

设置域名为 cisco

Switch1(config-mst)#name cisco

设置修订版本为 1

Switch1(config-mst)#revision 1

将 VLAN 10、20、30 绑定到实例 1 上:

Switch1(config-mst)#instance 1 vlan 10, 20, 30

将 VLAN 40、50、60 绑定到实例 2 上:

Switch1(config-mst)#instance 2 vlan 40, 50, 60

退出 MSTP 配置模式:

Switch1(config-mst)#exit

将本交换机设为 MSTP 实例 1(VLAN 10、20、30)的根桥:

Switch1(config)#spanning-tree mst 1 root primary

将本交换机设为 MSTP 实例 2(VLAN 40、50、60)的备份根桥:

Switch1(config)#spanning-tree mst 2 root secondary

4.2 Switch2

进入 MSTP 配置模式:

Switch2(config)#spanning-tree mst configuration

设置域名为 cisco

Switch2(config-mst)#name cisco

设置修订版本为 1

Switch2(config-mst)#revision 1

将 VLAN 10、20、30 绑定到实例 1 上:

Switch2(config-mst)#instance 1 vlan 10, 20, 30

将 VLAN 40、50、60 绑定到实例 2 上:

Switch2(config-mst)#instance 2 vlan 40, 50, 60

退出 MSTP 配置模式:

Switch2(config-mst)#exit

将本交换机设为 MSTP 实例 2(VLAN 40、50、60)的根桥:

Switch2(config)#spanning-tree mst 2 root primary

将本交换机设为 MSTP 实例 1(VLAN 10、20、30)的备份根桥:

Switch2(config)#spanning-tree mst 1 root secondary

4.3 Switch3

进入 MSTP 配置模式:

Switch3(config)#spanning-tree mst configuration

设置域名为 cisco

Switch3(config-mst)#name cisco

设置修订版本为 1

Switch3(config-mst)#revision 1

将 VLAN 10、20、30 绑定到实例 1 上:

Switch3(config-mst)#instance 1 vlan 10, 20, 30

将 VLAN 40、50、60 绑定到实例 2 上:

Switch3(config-mst)#instance 2 vlan 40, 50, 60

退出 MSTP 配置模式:

Switch3(config-mst)#exit

4.4 Switch4

进入 MSTP 配置模式:

Switch4(config)#spanning-tree mst configuration

设置域名为 cisco

Switch4(config-mst)#name cisco

设置修订版本为 1

Switch4(config-mst)#revision 1

将 VLAN 10、20、30 绑定到实例 1 上:

Switch4(config-mst)#instance 1 vlan 10, 20, 30

将 VLAN 40、50、60 绑定到实例 2 上:

Switch4(config-mst)#instance 2 vlan 40, 50, 60

退出 MSTP 配置模式:

Switch4(config-mst)#exit

4.5 Switch5

进入 MSTP 配置模式:

Switch5(config)#spanning-tree mst configuration

设置域名为 cisco

Switch5(config-mst)#name cisco

设置修订版本为 1

Switch5(config-mst)#revision 1

将 VLAN 10、20、30 绑定到实例 1 上:

Switch5(config-mst)#instance 1 vlan 10, 20, 30

将 VLAN 40、50、60 绑定到实例 2 上:

Switch5(config-mst)#instance 2 vlan 40, 50, 60

退出 MSTP 配置模式:

Switch5(config-mst)#exit

4.6 Switch6

进入 MSTP 配置模式:

Switch6(config)#spanning-tree mst configuration

设置域名为 cisco

Switch6(config-mst)#name cisco

设置修订版本为 1

Switch6(config-mst)#revision 1

将 VLAN 10、20、30 绑定到实例 1 上:

Switch6(config-mst)#instance 1 vlan 10, 20, 30

将 VLAN 40、50、60 绑定到实例 2 上:

Switch6(config-mst)#instance 2 vlan 40, 50, 60

退出 MSTP 配置模式:

Switch6(config-mst)#exit

五、验证结果

下面我们来看一下 Switch1 和 Switch2 MST 实例 12 的信息。

5.1 Switch1 的 MST 信息

实例 1

Switch1#show spanning-tree mst 1
##### MST1    vlans mapped:   10,20,30 <-- VLAN 10,20,30 映射到了该实例中
Bridge        address 5001.0001.0000  priority      24577 (24576 sysid 1)
Root          this switch for MST1 <-- 本交换机是该实例的根桥

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Gi0/0            Desg FWD 20000     128.1    P2p 
Gi0/1            Desg FWD 20000     128.2    P2p 
Gi0/2            Desg FWD 20000     128.3    P2p 
Gi0/3            Desg FWD 20000     128.4    P2p 
Gi1/0            Desg FWD 20000     128.5    P2p 
Gi1/1            Desg FWD 20000     128.6    P2p 

实例 2

Switch1#show spanning-tree mst 2
##### MST2    vlans mapped:   40,50,60 <-- VLAN 40,50,60 映射到了该实例中
Bridge        address 5001.0001.0000  priority      28674 (28672 sysid 2)
Root          address 5001.0002.0000  priority      24578 (24576 sysid 2)
              port    Gi1/0           cost          20000     rem hops 19

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Gi0/0            Desg FWD 20000     128.1    P2p 
Gi0/1            Desg FWD 20000     128.2    P2p 
Gi0/2            Desg FWD 20000     128.3    P2p 
Gi0/3            Desg FWD 20000     128.4    P2p 
Gi1/0            Root FWD 20000     128.5    P2p 
Gi1/1            Altn BLK 20000     128.6    P2p 

5.2 Switch2 的 MST 信息

实例 1

Switch2#show spanning-tree mst 1
##### MST1    vlans mapped:   10,20,30 <-- VLAN 10,20,30 映射到了该实例中
Bridge        address 5001.0002.0000  priority      28673 (28672 sysid 1)
Root          address 5001.0001.0000  priority      24577 (24576 sysid 1)
              port    Gi1/0           cost          20000     rem hops 19

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Gi0/0            Desg FWD 20000     128.1    P2p 
Gi0/1            Desg FWD 20000     128.2    P2p 
Gi0/2            Desg FWD 20000     128.3    P2p 
Gi0/3            Desg FWD 20000     128.4    P2p 
Gi1/0            Root FWD 20000     128.5    P2p 
Gi1/1            Altn BLK 20000     128.6    P2p 

实例 2

Switch2#show spanning-tree mst 2
##### MST2    vlans mapped:   40,50,60 <-- VLAN 40,50,60 映射到了该实例中
Bridge        address 5001.0002.0000  priority      24578 (24576 sysid 2)
Root          this switch for MST2 <-- 本交换机是该实例的根桥

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Gi0/0            Desg FWD 20000     128.1    P2p 
Gi0/1            Desg FWD 20000     128.2    P2p 
Gi0/2            Desg FWD 20000     128.3    P2p 
Gi0/3            Desg FWD 20000     128.4    P2p 
Gi1/0            Desg FWD 20000     128.5    P2p 
Gi1/1            Desg FWD 20000     128.6    P2p 

可以看出,Switch1 是 VLAN 10、20、30 的根桥,Switch2 是 VLAN 40、50、60 的根桥,达到预期效果!

发表评论