开发者社区> 技术小甜> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

STP的配置

简介:
+关注继续查看

拓扑图

wKiom1UwxDiCaS7jAACObUNeau8124.jpg

实验一:STP之PVST(基于每个vlan的生成树)的配置

(1)将交换机之间的链路都设置为trunk,利用vtp在交换机上创建vlan2

s1(config)#interface range fastEthernet 0/1-3

s1(config-if-range)#switchport mode trunk 

s2(config)#interface range fastEthernet 0/1-3

s2(config-if-range)#switchport mode trunk 

s3(config)#interface range fastEthernet 0/1-2

s3(config-if-range)#switchport mode trunk 

s3(config)#vtp domain xu.com

s3(config)#vtp mode server 

s3(config)#vlan 2

(2)检查默认的STP树

s3#show spanning-tree 

(3)控制s1为vlan1的根桥

s1(config)#spanning-tree vlan 1 priority 4096(如果要s1成为vlan2的根,则将vlan1改为vlan2)

(4)控制指定端口

s3(config)#spanning-tree vlan 1 root secondary (通过修改优先级为仅低于根优先级来控制指定端                                                          口)

(5)修改端口优先级

s3(config)#interface fastEthernet 0/1

s3(config-if)#spanning-tree vlan 1 port-priority 112 (优先级是16的倍数,默认为128)

(6)关掉某个vlan(如vlan1)的STP 

s1(config)#no spanning-tree vlan 1(若想开启则把no去掉)

实验二:STP之portfast,uplinkfast,backbonefast的配置

配置portfast

s1(config)#interface fastEthernet 0/4

s1(config-if)#switchport mode access 

s1(config-if)#switchport access vlan 1

s1(config-if)#spanning-tree portfast (端口配置了portfast后会立即进入转发状态,不需要30秒的                                       等待时间)

配置uplinkfast

s3(config)#spanning-tree uplinkfast (快速收敛,只需在接入层交换机上配置)

s3(config)#spanning-tree uplinkfast max-update-rate 200 (配置每秒钟发送的组播数为200个)

配置backbonefast

s3(config)#spanning-tree backbonefast (需要在每台交换机上都配置)

实验三:STP之RSTP的配置

清除实验二中的配置

s3(config)#no spanning-tree backbonefast (需要在每台交换机上都配置)

s3(config)#no spanning-tree uplinkfast

配置RSTP

s1(config)#spanning-tree mode rapid-pvst (需要在每台交换机上都配置)

配置链路类型配置(如果接口上配置了spanning则接口为边缘接口,如果接口是全双工则接口为点到点接口,如果接口为半双工则接口为共享接口)

s3(config)#interface fastEthernet 0/1

s3(config-if)#duplex full 

s3(config-if)#spanning-tree link-type point-to-point 

s1(config)#interface fastEthernet 0/3

s1(config-if)#duplex full 

s1(config-if)#spanning-tree link-type point-to-point 

查看

s1h#show spanning-tree summary 

实验四:STP之MSTP的配置

s1(config)#spanning-tree mode mst (把以上生成树模式改为MSTP,默认时是PVST+)

s1(config)#spanning-tree mst configuration(进入MSTP的配置模式)

s1(config-mst)#name cisco(命名MSTP的名字)

s1(config-mst)#revison 1 (配置MST的revision号,只有名字和revision号相同的交换机才是同一个                             MST区域)

s1(config-mst)#instance 1 vlan 1-2 (把vlan1和vlan2的生成树映射到实例1)

s1(config-mst)#instance 2 vlan 3-4  (把vlan3和vlan4的生成树映射到实例2,这里一共有3个MST实                                   例。实例0是默认的实例,默认时所有的vlan都映射到该实例上)

s1(config-mst)#exit

s1(config)#spanning-tree mst 1 priority 8192 (配置s1为MST实例1的根桥)

s1(config)#spanning-tree mst 1 priority 12288

s2(config)#spanning-tree mode mst

s2(config)#spanning-tree mst configuration

s2(config-mst)#name cisco

s2(config-mst)#revison 1

s2(config-mst)#instance 1 vlan 1-2

s2(config-mst)#instance 2 vlan 3-4

s2(config-mst)#exit

s2(config)#spanning-tree mst 1 priority 12288

s2(config)#spanning-tree mst 1 priority 8192 (配置s2为MST实例1的根桥)

实验五:STP之STP树保护的配置

wKiom1UxvCrQglKfAABdt8nhXMY218.jpg

(1)配置s1、s2、s3之间的链路为trunk

(2)配置s1为根桥

s1(config)#spanning-tree vlan 1 Priority 8192

(3)在s2的fa0/2上配置Guard Root

s2(config)#int fa0/2

s2(config-if)#spanning-tree guard root (此时便可以阻止s3成为根桥,如果将s3的优先级改为4096,则s2的fa0/2端口将阻塞,当威胁消除后,接口将自动恢复正常)

(4)配置BPDU Guard

s3(config)#interface fastEthernet 0/2

s3(config-if)#sWitchport mode access 

s2(config)#int fa0/2

s2(config-if)#no spanning-tree guard (去掉之前的配置)

s2(config-if)#switchport mode access 

s2(config-if)#spanning-tree portfast

s2(config-if)#spanning-tree bpduguard enable(此时,交换机s2从fa0/2接口收到s3的BPDU,fa0/2被disable了,s2从fa0/2接口应该接入不会发送BPDU的计算机。要重新开启这个端口,请先移除BPDU源,在该接口上执行shutdown和no shutdown)

s2(config)#errdisable recovery cause bpdugard(允许因为 bpdugard而关闭的接口在故障解除后自                                               动恢复)

s2(config)#errdisable recovery interval 60(配置自动恢复的时间为60秒)

(5)配置BPDU Filter

s2(config)#default intface fa0/2

s2(config-if)#spanning-tree bpdufilter enable

实验六:STP之环路防护的配置

wKioL1UxzXLBqAREAACRXaiwV2w666.jpg

(1)把每条链路都配置trunk,将s1配置为root

(2)配置Guard Loop

s3(config)#interface fastEthernet 0/2

s3(config-if)#spanning-tree guard loop

(2)配置UDLD

s3(config-if)#no spanning-tree guard loop (清除上步的配置)

s2(config)#udld aggressive(配置UDLD为主动模式,这样监测到单向链路故障后,将关闭接口。udldenable命令则是配置UDLD为普通模式)

s2(config)#int fa0/2 

s2(config-is)#udld port aggressive

s3(config)#udld aggressive

s3(config)#udld message time 15(配置每15秒发送一次探测包,默认为15秒)

s3(config)#int fa0/2 

s3(config-is)#udld port aggressive(只有链路两边都配置了UDLD才能建立邻居关系,UDLD发现原有的邻居不在了才认为发生了单向故障,如果只有一端配置了UDLD,是无法监测单向链路故障的。单向故障排除后,可以使用udld reset命令来使接口从新可用,也可以使用errdisable recovery case udld 全局命令让接口自动重新可用)

s3#show udld neighbors

实验七:STP之FlexLink的配置

wKiom1Ux866BHd-sAACU6kmqVIc215.jpg

(1)把每条链路都配置trunk,并配置管理地址(供测试)

s1(config)#int vlan 1

s1(config-if)#ip add 192.168.1.1 255.255.255.0

s2(config)#int vlan 1

s2(config-if)#ip add 192.168.1.3 255.255.255.0

(2)配置FlexLink

s3(config)#int fa0/2

s3(config-if)#switchport backup interface fa0/1(配置fa0/1是fa0/2的备份接口)

s3(config-if)#switchport backup interface fa0/1 premmption  mode forced(配置抢占模式。preemface mode 有forced、bandwith和off三种模式,off是默认模式,主用接口故障而备用接口激活后,在主用接口恢复正常后,如果preemption mode是off,则主用接口不会激活,如果preemption mode是forced,则主用接口会激活,如果preemption mode是bandwidth,则带宽大的接口会激活 )

s3(config-if)#switchport backup interface fa0/1 premmption delay 30(配置抢占延时,单位是秒)

s3(config)#mac address-table  move update transmit

s3(config)#int fa 0/2 

s3(config-if)#switchport backup interface fa0/1 mmu primary vlan 1 (配置MAC address-table  move update 当主用接口发生=故障后,备用接口启用,这时交换机s1和s2的MAC地址表并没有及时更新。配置MAC address-table  move update 后,交换机s3将发送更新消息给s1和s2)

s1(config)#mac address-table  move update receive

s2(config)#mac address-table  move update receive(“MAC address-table  move update”功能不仅需要在接入层配置,也需要在分布层交换机配置,s3发送,s1和s2接收)

(3)测试

从s3连续ping s1(192.168.1.1),然后在s2上关闭fa0/2,从s3上看到通信时连续的

s3#ping 192.168.1.1 repeat 1000000


STP总结:交换机通过stp协议有选择性地阻断了某些接口,从而构建无环路的转发路径,stp需要选择根桥、根口、和指定端口,IEEE802.1d的stp需要较长时间才收敛,通常为30-50秒。














本文转自shangshanyang51CTO博客,原文链接:http://blog.51cto.com/qqran/1633927 ,如需转载请自行联系原作者




版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
配置LNMP环境
Nginx,MySQL与PHP的环境搭建
47 0
5.DI的配置使用
篇幅有限,所以就分开写了,本节说下setter注入方式 setter注入方式 setter注入方式只有一种——根据setter名字进行注入 (1)写一个测试类HelloImpl4,包含两个setter方法,“setMess...
713 0
struts2的配置
引用:http://www.cnblogs.com/wchhuangya/archive/2011/03/21/1968877.html struts2框架,大多数框架都在使用。由于工作需要,开始做Java项目。
772 0
+关注
10136
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载