STP生成树协议基本配置示例---STP逻辑树产生和修改

STP是用来避免数据链路层出现逻辑环路的协议,运行STP协议的设备通过交互信息发现环路,并通过阻塞特定端口,最终将网络结构修剪成无环路的树形结构。在网络出现故障的时候,STP能快速发现链路故障,并尽快找出另外一条路径进行数据传输。

交换机上运行的STP通过BPDU信息的交互,选举根交换机,然后每台非根交换机选择用来与根交换机通信的根端口,之后每个网段选择用来转发数据至根交换机的指定端口,最后剩余端口则被阻塞。

配置思路

启用STP协议--->配置STP模式--->配置根桥和备份根桥--->配置指定端口

由于默认情况下,运行STP协议的网络中,根交换机、根端口、指定端口选择可能基于交换机的MAC地址的大小,因此带来了不确性,极可能由此产生网络隐患。通过手动配置根交换机、根端口、指定端口更能保障网络稳定性。

示例配置

SW1作为主根交换机,SW2作为SW1的备份根交换机。同时对于S4交换机,E0/0/1接口应该作为根端口。对于S2和S3之间的链路,应该保证S2的E0/0/3接口作为指定端口。同时在交换机S3上,存在两个接口E 0/0/10、E0/0/11连接到测试PC,测试PC经常上下线网络,需要将交换机S3与之相连的对应端口定义为边缘端口,避免测试电脑上下线对网络产生的影响。

网络拓扑图

每台交换机启用STP协议和配置STP模式,配置代码如下:

<Huawei>system-view
[Huawei]sysname SW1
[SW1]stp enable //启用STP协议
[SW1]stp mode stp //配置STP模式为STP

<Huawei>system-view
[Huawei]sysname SW2
[SW2]stp enable
[SW2]stp mode stp

<Huawei>system-view
[Huawei]sysname SW3
[SW3]stp enable
[SW3]stp mode stp

<Huawei>system-view
[Huawei]sysname SW4
[SW4]stp enable
[SW4]stp mode stp

<Huawei>system-view
[Huawei]sysname SW5
[SW5]stp enable
[SW5]stp mode stp

查看每台交换机的stp简要信息:


从上图看出,默认情况下,SW3被选举为根交换机,SW1的根端口为GE 0/0/1,SW2的根端口为GE 0/0/1,SW4的根端口为GE 0/0/1,SW5的根端口为E 0/0/1。但实际上,SW1和SW2交换机性能要优于SW3,应当选举SW1或者SW2为根桥,并设置其中1个交换机为备用根桥,这样网络整体性能更好。

手动配置SW1为根桥,SW2交换机为备用根桥,配置代码如下:

[SW1]stp priority 4096 //设置SW1交换机的stp优先级为4096

[SW2]stp priority 8192 //设置SW2交换机的stp优先级为8192

根交换机在网络中的位置是非常重要的,如果选择了一台性能较差的交换机,或者是部署在接入层的交换机作为根交换机,会影响到整个网络的通信质量及数据传输。所以确定根交换机的位置极为重要。


默认情况下STP交换机的stp优先级为32768


SW1交换机已经被设置为根桥

如上图所示,还有一种方法设置SW1交换机为根桥,即通过命令 stp root primary直接指定SW1为根桥。使用此命令后,设备的桥优先级值会被自动设为 0,并且不能通过命令 stp priority priority来更改该设备的桥优先级。


如上图所示,还有一种方法设置SW2为备份根桥,当SW1发生故障时可以接替SW1成为新的根桥。在设备上执行 stp root secondary命令后,设备的桥优先级的值会被自动设为 4 096,并且不能通过命令 stp priority priority来更改该设备的桥优先级。

SW2的根端口为GE 0/0/3,SW3的根端口为GE 0/0/1,SW4的根端口为GE 0/0/1,SW5的根端口为E 0/0/1。

手动设置SW5的E 0/0/2端口为根端口,配置代码如下:

[SW5-Ethernet0/0/2]stp cost 100000 //设置SW5的E 0/0/2端口开销为100000

SW5的E 0/0/2端口开销默认为200000

生成树在选举出根交换机之后,将在每台非根交换机上选举根端口。选举时首先比较该交换机上每个端口到达根交换机的根路径开销,路径开销最小的端口将成为根端口。如果根路径开销值相同,则比较每个端口所在链路上的上行交换机ID,如果该交换机ID也相同,则比较每个端口所在链路上的上行端口ID。每台交换机上只能拥有一个根端口。


SW5的GE 0/0/2端口已经被设置为根端口

手动设置SW3的GE 0/0/2端口为指定端口,配置代码如下:

[SW3-GigabitEthernet0/0/1]stp cost 10000 //设置SW3的GE 0/0/1端口开销为10000

SW3的GE 0/0/1端口开销默认为20000


修改SW3的GE 0/0/1端口开销为10000,SW3的GE 0/0/2端口根路径开销为10000,小于SW2的GE 0/0/1端口根路径开销20000,则SW3的GE 0/0/2端口为指定端口。

stp边缘端口设置

华为交换机STP里面,如果某一个指定端口位于整个网络的边缘,即不再与其他交换设备连接,而是直接与终端设备直连,这种端口叫做边缘端口。边缘端口一般接pc或终端,主要目的是提升用户体验感,终端可以比较快获取到地址。

SW5的GE 0/0/3端口和SW5的GE 0/0/4端口设置为边缘端口,配置代码如下:

[SW5-Ethernet0/0/3]stp edged-port enable
[SW5-Ethernet0/0/4]stp edged-port enable //使能边缘端口

相关推荐
海阔天空_2013几秒前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
桥田智能3 分钟前
气爪在自动化装配线中是如何应用的?
运维·自动化
JavaPub-rodert18 分钟前
鸿蒙生态崛起:开发者的机遇与挑战
华为·harmonyos
Tassel_YUE1 小时前
网络自动化04:python实现ACL匹配信息(主机与主机信息)
网络·python·自动化
€☞扫地僧☜€2 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器
其乐无涯2 小时前
服务器技术(一)--Linux基础入门
linux·运维·服务器
Diamond技术流2 小时前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
写bug的小屁孩2 小时前
前后端交互接口(三)
运维·服务器·数据库·windows·用户界面·qt6.3
斑布斑布2 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习
紅色彼岸花2 小时前
第六章:DNS域名解析服务器
运维·服务器