以太网 STP、RSTP、MSTP基础配置、STP生成树安全保障操作命令介绍

news2024/11/26 20:27:58

2.13.0 以太网 STP、RSTP、MSTP配置、生成树安全保障操作

主要参考:华为S2750, S5700, S6700 V200R005(C00&C01&C02&C03) 产品文档 《命令手册》

MSTP快速生成树

  • STP配置
  • RSTP配置
  • MSTP配置
  • 生成树的安全保障操作
    • (1)根桥保护
    • (2)边缘端口&BPDU保护&BPDU过滤
      • 1、配置边缘端口的原因
      • 2、边缘端口的作用
      • 3、BPDU保护(全局)
      • 4、BPDU过滤
    • (3)防TC-BPDU报文攻击保护(全局)
    • (4)环路保护


STP配置

# 开启STP生成树
[LSW1]stp enable 

# 使用STP模式
[LSW1]stp mode stp 

# 配置设备优先级
[LSW1]stp priority 0~61440

# 强制设置成为根桥
[LSW1]stp root primary 

# 强制设置成为备用根桥
[LSW1]stp root secondary 

RSTP配置

# 开启STP生成树
[LSW1]stp enable 

# 使用STP模式
[LSW1]stp mode rstp 

MSTP配置

# 开启STP生成树
[LSW1]stp enable 

# 使用STP模式
[LSW1]stp mode mstp 

# 创建MSTP实例(所有开启MSTP的交换机上配置一样)
[LSW1]stp region-configuration 			\\ 配置生成树区域信息
[LSW1-mst-region]region-name huawei		\\ 区域命名
[LSW1-mst-region]instance 1 vlan 10 20	\\ 创建实例1
[LSW1-mst-region]instance 2 vlan 30 40	\\ 创建实例2
[LSW1-mst-region]active region-configuration \\ 激活区域配置文件
[LSW1-mst-region]q

# 设置本设备的在区域实例1的优先级
[LSW1]stp instance 1 priority 

# 设置本设备在区域实例1中为根桥
[LSW1]stp instance 1 root primary 

生成树的安全保障操作

(1)根桥保护

1、默认情况下STP交换网络中只要出现优先级更高的(指设备优先级高pri=0),STP拓扑的根桥将会发生改变造成网络震荡。

在这里插入图片描述

2、为了保护网络的稳定性,可在用户接口与未使用的端口上配置根保护功能,使接入的交换机即使更改成更高的优先级,也不能影响当前网络的根网桥的选举。

  • 一旦使能根保护功能的指定端口收到优先级更高的BPDU时,端口状态将进入Discarding状态,不再转发报文。
  • 在经过一段时间(通常为两倍的Forward Delay),如果端口一直没有再收到优先级较高的BPDU,端口会自动恢复到正常的Forwarding状态。

3、根保护功能一般只在根桥的端口上配置,若在其他类型的端口上执行stp root-protection,根保护功能并不生效。

在这里插入图片描述

(2)边缘端口&BPDU保护&BPDU过滤

1、配置边缘端口的原因

  • 默认在启用了生成树协议的交换设备,会定时向所有端口发送BPDU,但对于一些连接主机的端口来说是没必要同时也是不允许的

  • 没必要的原因是主机并不能处理BPDU报文。不允许是防止不法主机通过BPDU来侦听交换设备信息与对现网的生成树拓扑造成影响,当不法用户知道存在BPDU之后将主机换成交换机并将优先级调高将有可能影响整个生成树的拓扑变化,导致出现网络故障。

2、边缘端口的作用

  • 单独开启:[LSW1-Ethernet0/0/1]stp edged-port enable

  • 默认开启:[LSW1]stp edged-port default

  • 边缘端口活动之后,直接进入转发状态。

  • 防止交换机设备将不必要的BPDU从边缘端口发出,有效避免了不必要的BPDU产生。

  • 但边缘端口有个很奇葩的特性就是:只要收到了BPDU那么边缘端口将变回正常的交换接口,又能收发BPDU了。

  • 通过命令stp edged-port enable将当前端口配置成边缘端口,该端口便不再参与生成树计算,从而帮助加快网络拓扑的收敛时间以及加强网络的稳定性。

3、BPDU保护(全局)

  • [LSW1]stp bpdu-protection

  • [LSW1]error-down auto-recovery cause bpdu-protection interval 30~86400

  • 边缘端口收到BPDU报文会失去其边缘端口属性。为防止攻击者仿造BPDU报文导致边缘端口属性变成非边缘端口,可通过执行命令stp bpdu-protection配置交换设备的BPDU保护功能。

  • 配置BPDU保护功能后,如果边缘端口收到BPDU报文,边缘端口将会被shutdown,边缘端口属性不变。

  • 在配置了BPDU保护功能后关闭端口的情况下,被关闭的端口默认不会自动恢复,只能由网管先执行shutdown命令再执行undo shutdown命令手动恢复,也可以在接口视图下执行restart命令重启端口。

  • 如果用户希望被关闭的端口可以自动恢复,则可以通过在系统视图下执行error-down auto-recovery cause bpdu-protection interval 恢复时间 命令使被关闭的端口经过延时时间后能够自动恢复。

4、BPDU过滤

  • 单独开启:**[LSW1-Ethernet0/0/1]stp bpdu-filter enable **

  • 默认开启:**[LSW1]stp bpdu-filter default **

  • 边缘端口仍然会可以接收BPDU报文,接收BPDU之后变成非边缘端口,引起网络震荡。

  • 为了解决这个问题,除了BPDU保护,还能通过在该端口上配置命令stp bpdu-filter enable将BPDU过滤,使边缘端口不处理、不发送BPDU报文,该端口即为BPDU filter端口。

  • 与BPDU保护不同的是该功能过滤BPDU并不会像BPDU保护那样关闭接口。

(3)防TC-BPDU报文攻击保护(全局)

  • [LSW1] stp tc-protection

1、在运行生成树协议的二层网络中,设备在接收到拓扑变化报文后,会执行MAC地址表项和ARP表项的删除操作,如果频繁操作则会对CPU的冲击很大,可能造成CPU占用率过高。

2、设备默认启用防拓扑变化攻击功能,通过执行stp tc-protection 间隔时间 命令,设置设备在间隔时间内,交换设备处理最大的TC BPDU数量。对于其他超出阈值的拓扑变化报文,定时器到期后设备只对其统一处理一次。这样可以避免频繁的删除MAC地址表项和ARP表项,从而达到保护设备的目的。

(4)环路保护

  • [LSW1-GigabitEthernet0/0/1] stp loop-protection

1、在运行生成树协议的网络中,根端口其他阻塞端口状态是依靠不断接收来自上游设备的BPDU报文维持。

  • 当由于链路拥塞或者单向链路故障导致这些端口收不到来自上游设备的BPDU报文时,交换设备会重新选择根端口。
  • 原先的根端口会转变为指定端口,而原先的阻塞端口会迁移到转发状态,导致网络中可能产生环路。

在这里插入图片描述

在这里插入图片描述

2、为了防止以上情况发生,可部署环路保护功能。

  • 在启动了环路保护功能后,如果根端口或Alternate端口长时间收不到来自上游设备的BPDU报文时,则向网管发出通知信息。
  • 此时根端口会进入Discarding状态,角色切换为指定端口,而Alternate端口则会一直保持在阻塞状态(角色也会切换为指定端口),不转发报文,从而不会在网络中形成环路。
  • 直到链路不再拥塞或单向链路故障恢复,端口重新收到BPDU报文进行协商,并恢复到链路拥塞或者单向链路故障前的角色和状态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/88814.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

jdk1.8下载与安装教程(win11)

一、JDK下载 1.首先在Oracle官网上下载jdk1.8 打开官网:https://www.oracle.com/ 2.选择Developer Services的Java 3.选择Oracle JDK 4.选择Java8 Window点击: jdk-8u351-windows-x64.exe下载 5.接受Oracle Java SE的Oracle技术网络许可协议 …

Folate-PEG-DBCO,DBCO-PEG- FA,叶酸聚乙二醇环辛炔

●中文名:叶酸聚乙二醇环辛炔,叶酸聚乙二醇二苯基环辛炔,DBCO-PEG-叶酸 ●英文名:FA-PEG-DBCO , Folate-PEG-DBCO,DBCO-PEG- FA,DBCO-PEG-Folate,DBCO-PEG- Folic acid ●外观以及…

游戏合作伙伴专题:BreederDAO 与 SuperGaming 建立 SuperCharged 合作伙伴关系

BreederDAO 很高兴地宣布与 SuperGaming 建立合作伙伴关系,SuperGaming 是一家充满激情的游戏工作室,希望通过 Tower Conquest:Metaverse Edition 进军 Web 3 行业,这是一款基于 Polygon 区块链的免费多人塔防游戏。 征服新领域 S…

产品设计学习过程中的技术和方法

在产品设计的过程中,当你心中有创意设计时,你需要写下这个创意设计,并生成一个例子标记,以便总结你以前的想法。此时,你需要设计性能。在设计性能的过程中,我们需要使用各种设计工具,这些设计工…

自定义Springboot Starter

1.创建一个父项目&#xff1a; demo 1.1 项目结构&#xff1a; 1.2 pom文件内容&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/X…

大四web前端网页制作课作业——HTML+CSS+JavaScript仿小米手机商城网站(37页)

常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他等网页设计题目, A…

Windows + Pycharm + Docker 配置GPU跑深度学习【不常见GPU问题】

Windows Pycharm Docker 配置GPU跑深度学习 核心配置方法回顾&#xff0c;与 GPU无法使用的解决方案。 1. 更换镜像源 用于加速资源下载&#xff01;修改配置文件: daemon.json 添加国内镜像源&#xff1a; "registry-mirrors": ["https://registry.docke…

yolov5修改骨干网络--原网络说明

yolov5l网络示意图&#xff1a; 以yolov5s为例&#xff08;模型都是在yolov5l上修改了depth_multiple和width_multiple&#xff0c;上面图形是画的yolov5l的&#xff0c;下面的yaml是yolov5s的目的是为了更好的计算网络信息&#xff09; nc: 80 # number of classes depth_mu…

JuiceFS CSI Driver 常见问题排查指南

Kubernetes 作为资源调度和应用编排的开源系统&#xff0c;正在成为云计算和现代 IT 基础架构的通用平台。JuiceFS CSI Driver 实现了容器编排系统的存储接口&#xff0c;使得用户可以在 Kubernetes 中以原生的方式使用 JuiceFS。 由于 Kubernetes 自身的复杂性&#xff0c;用…

全栈Jmeter接口测试(十一):BeanShell脚本通过BeanShell进行加解密

BeanShell脚本 BeanShell简介&#xff1a; BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些 语法和方法&#xff1b; BeanShell是一种松散类型的脚本语言&#xff1b; BeanShell是用Java写成的&#xff0c;一个小型的、免费的、可以下载、嵌入式的 Ja…

四、Docker 镜像发布阿里云、私有库(详解、实操)第一篇

1、概述 在上一篇中我们讲解到从Docker央仓库pull下来的镜像(centos7),是没有vim、ifconfig等命令的,我们可以以centos7为基础安装vim、ifconfig等需要的命令,然后export为一个tar,然后再import为一个新的增强版本的centos7镜像。那问题来了,这种export、import方式有没…

java计算机毕业设计基于安卓Android的教务的校内人员疫情排查系统设计与实现APP

项目介绍 校内人员疫情排查系统APP管理是校内人员疫情排查系统管理中对学生必不可少的一个部分。在人们校内人员疫情排查系统管理的整个过程中,校内人员疫情排查系统APP管理担负着最重要的角色。为满足如今日益复杂的管理需求,各类校内人员疫情排查系统APP管理程序也在不断改进…

java----类的加载与其初始化

java内存分析&#xff1a; 类加载的过程&#xff1a; 类的加载与ClassLoader的理解&#xff1a; 类的初始化&#xff1a; package Collections; public class text1 { public static void main(String[]args){A anew A();System.out.println(A.m); } } class A{static {System…

语言模型(马尔可夫模型,n元语法)

参考&#xff1a;8.3. 语言模型和数据集 — 动手学深度学习 2.0.0 documentation 假设长度为T的文本序列中的词元依次为x1,x2,…,xT。 于是&#xff0c;xt&#xff08;1≤t≤T&#xff09; 可以被认为是文本序列在时间步t处的观测或标签。 在给定这样的文本序列时&#xff0c;语…

Ubuntu中使用gcc/g++编译C/C++

对于习惯了使用windows进行开发的朋友们&#xff0c;如果想要编译C语言&#xff0c;只要要在windows中安装一个可以编译的IDE即可。或者直接自己加载编译的工具链&#xff0c;使用Cmd命令行也可以完成C语言的编译。 但是如果想要在linux环境中编译C语言&#xff0c;安装编译工具…

【华为上机真题 2022】消消乐游戏

&#x1f388; 作者&#xff1a;Linux猿 &#x1f388; 简介&#xff1a;CSDN博客专家&#x1f3c6;&#xff0c;华为云享专家&#x1f3c6;&#xff0c;Linux、C/C、云计算、物联网、面试、刷题、算法尽管咨询我&#xff0c;关注我&#xff0c;有问题私聊&#xff01; &…

MapReduce案例-TopN(倒序排序)

文章目录MapReduce案例-TopN(倒序排序)一、案例分析1、TopN分析法介绍2、案例需求及分析二、MapReduce 倒序排序代码实现1、准备数据文件(1) 在虚拟机上创建文本文件(2) 上传文件到HDFS指定路径2、map阶段实现(1) 创建前N成绩映射器类3、Reduce阶段实现4、Driver程序主类实现5、…

深入理解React中的虚拟DOM(源码+分析)

文章目录引文一、前端技术的发展历史1.1 前后端不分离1.1.2 静态网站1.1.3 动态网站1.2 前后端分离1.2.1 jQuery时代1.2.2 angularjs时代1.2.3 react与vue1.3 总结二、什么是虚拟dom2.1 概念2.2 react中的虚拟dom三、react虚拟DOM的优势是什么3.1 局部更新DOM的机制3.2 浏览器兼…

shell编程基础

重定向输入和输出 输出重定向 bash shell用大于号(>)来完成这项功能&#xff1a;command > outputfile 如果不想覆盖文件原有内容&#xff0c;而是想要将命令的输出追加到已有文件中&#xff0c;比如你正 在创建一个记录系统上某个操作的日志文件。在这种情况下&#xf…

postgresql备份恢复

一、逻辑备份与恢复 pg_dump -d test >/tmp/test.sql -p 5433 --备份test这个数据库 psql -p 5433 </tmp/test.sql --恢复 pg_dump > /tmp/full.sql -p 5433 --备份整库 psql </tmp/full.sql -p 5433 --恢复 二、物理备份与恢复 1.开启归档 &#xf…