[网络知识]交换STP
STP是应用在交换机上的,其目的是为了分割广播风暴。我们正在实际情况中,交换机的连接一定是有环路的(物理上),STP就是为了用逻辑链路控制一条路关掉,使其物理有环逻辑无环。
STP是自动生成的,建立的时候通过组播(运行STP的交换机)的方式发送BPDU来学习MAC地址,从而自动形成STP拓扑,具体理论不说了。
STP算法计算分为3个步骤:
1.每个广播域选择根网桥
----》选择网桥ID小的作为RB。
网桥ID=优先级(0-65535,默认:32768,steps:4096)+MAC地址
2.每个非RB选择选择一个根端口RP
----》(1).该非RB的交换机的端口到根网桥的路径成本最低(千:2W,百:20W)
(2).一样的话。端口另一端的设备的网桥ID最小。
(3).还一样的话。选择端口标识小的。
(端口优先级(0-240,默认128,steps 16)+端口号(e0/0/0这样的))。基本不用
3.每个网段必须选择一个指定端口DP(DESIGNATED PORT)
----》根网桥上全是DP,那么对面就是RP。
(1)该端口所在的交换机到RB路径成本最低
(2)一样的话。所在的交换机网桥ID最小
实际操作:
命令:、
display bridge mac-address //查看MAC地址
display stp brief //查看stp状态
- 先找RB,优先级都是32768.那么MAC地址小的就是网桥ID小的。明显的S4就是RB。
- S4是RB,因为非RB的根端口需要到RB路径成本最小,其默认cost都是一样。所以对面就是RP。即,S5/G2是S5的RP,S3/G1是S3的RP。 S1的G2和G3到S4cost一样,那么比端口对面的交换机的网桥ID,S3<S5。所以S1/G2是S1的RP。S2/G2是S2的RP。
S1:G2
S2:G2
S3:G1
S5:G2 - 找指定端口。S4:G1/G2都是DP。S1<----->S3网段是S3到S4代价低,所以是S3/G2是该网段的DP。S1<----->S5明显S5近,所以是S5/G3。S1<----->S2成本一样,所以比网桥ID,那么S1/G1是DP。S2<----->S5,因为是S2/G2是RP,所以对面是DP。
- 综上。S1/G3和S2/G1被堵塞。如下图标识。
命令验证:
以上就是STP的原理。那条被堵塞的端口的线路,也是我们的备份链路。逻辑上使用机制把端口堵塞了。但是还是可以接受BPDU报文的,还是接收拓扑更新。其中链路出问题又会自动启动重新生成STP拓扑。有时间更新详细点。
下面的命令可以改变RB,实际中还是会自己配置STP优先级的。
stp priority <优先级:4096*n,n属于自然数>
MSTP
图上STP堵塞端口标出来了。用PC1 ping PC2抓到看看确实完全没有ICMP包通过。那么想想我们要是很多vlan很多主机,难道都通过这个链路走吗?这是不现实的,所以要用到MSTP。
我们可以创建两个实例,如图。这叫负载均衡,每条链路都可以利用到,另一条线路是这个实例的备份链路。一条出问题了走另一条路叫容错。实例就是同一个物理拓扑,创建不同的STP树。
[S1]stp region-configuration //创建stp区域设置
[S1-mst-region]region-name PROJECT1 //区域名
[S1-mst-region]instance 1 vlan 10 20 //创建实例1并添加vlan10 20
[S1-mst-region]instance 2 vlan 30 40 //创建实例2并添加vlan30 40
[S1-mst-region]active region-configuration //激活
[S1-mst-region]q
[S1]stp instance 1 priority 4096 //实例1的主根
[S1]stp instance 2 priority 8192 //实例2的次根
[S2]stp region-configuration
[S2-mst-region]region-name PROJECT1
[S2-mst-region]instance 1 vlan 10 20
[S2-mst-region]instance 2 vlan 30 40
[S2-mst-region]active region-configuration
[S2-mst-region]q
[S2]stp instance 2 priority 4096 //实例2的主根
[S3]stp region-configuration
[S3-mst-region]region-name PROJECT1
[S3-mst-region]instance 1 vlan 10 20
[S3-mst-region]instance 2 vlan 30 40
[S3-mst-region]active region-configuration
[S3-mst-region]q
[S3]stp instance 1 priority 8192 //实例1的次根
全部端口pc设为vlan10或20,用PC3 ping PC2,在S2----S3网段间抓包验证。正确。
down掉联通的一个口,会转变为S3作为主根。再次开启又回来了。
全部端口pc设为vlan30或40,用PC3 ping PC1,在S21----S3网段间抓包验证。正确
display stp instance 1
display stp instance 1 brief
display stp brief
- 点赞
- 收藏
- 关注作者
评论(0)