生成树Toolkit
STP Toolkit
快速收敛:
- Port Fast
生成树安全:
- Root Guard
- BPDU Guard
- BPDU Filter
- Port Security
防环:
- Loop Guard

Port Fast
该功能的配置分为全局和接口配置,在全局模式下,交换机的所有Access端口均会启用Port Fast功能。端口配置只对单一端口生效。
该功能不能配置在Trunk链路上,若配置在Trunk链路上,极有可能导致生成树环路的产生。
BPDU Filter
该功能同样也有全局与接口配置:
- 全局(spanning-tree portfast bpdufilter default——Cisco命令)
- 接口(spanning-tree bpdufilter enable——Cisco命令)
全局配置只会在启用了Port Fast功能的接口上启用,在全局模式下,交换机不会过滤传入的BPDU,但会过滤大多数(并不是全部)传出的BPDU。
当端口启动时,会发出一些BPDU,若收到了BPDU,Port Fast和BPDU Filter功能将被关闭,交换机将参与生成树计算。
接口配置将无条件的过滤传入和传出的BPDU,无论是PortFast状态还是Access或Trunk模式。这相当于在该端口关闭了STP,这十分危险。
BPDU Guard
该功能阻止端口接受BPDU。如果端口仍然受到BPDU,则将该端口置于err-disabled状态,如果配置的Port Fast端口收到了BPDU,则说明存在无效配置,该功能提供了对无效配置的安全响应,因为管理员需要手动设置才能才能将端口重新投入使用(该功能也能够防止外来的恶意BPDU攻击)。
该功能具有两种配置方法:
- 全局配置(spanning-tree portfast bpduguard default——Cisco命令)
- 启用状态取决于Port Fast状态。
- 接口配置(spanning-tree bpduguard enable——Cisco命令)
- 无条件启用BPDU Guard,无论是PortFast状态还是Access或Trunk模式。
有两种办法可以将端口从err-disabled状态转变为正常状态
- 手动开启端口(no shutdown)
- 使用 errdisable recovery cause bpduguard,配置err-disable状态自动恢复。 默认恢复间隔为 300 秒,但可以使用 errdisable recovery interval 命令更改。
Root Guard
根保护功能只能启用在指定端口上,该功能能够防止外来的恶意BPDU攻击。
- 如果交换机在启用根保护的端口上收到更优的BPDU,根保护将会把端口移动到根不一致(root-inconsistent)的STP状态。
- 这种根不一致状态处于实际上是Listening状态,没有流量能够通过这个端口转发,通过这个方式来守护根桥的位置。
Root Guard vs BPDU Guard
如果设备上启用了Port Fast,那么BPDU Guard会在接受BPDU时禁用此端口。它有效的禁用了此端口后面的设备参与STP。只有手动重新启用阻塞状态的端口,或者配置自动恢复的时间。
而Root Guard的作用是,只要设备不尝试成为根,就允许设备参与STP,该功能对端口阻塞的恢复是自动的,一旦违规设备停止发送更优的BPDU,端口就会被恢复。
Loop Guard
STP将物理拓扑上的冗余分解为无环路、树状拓扑。STP的最大问题是某些软件故障会导致它失败。
在下图的情况中,交换机B发送的BPDU无法到达交换机C,交换机C的端口转变为指定端口并开始转发数据,则形成了网络环路。

如果开启了Loop Guard功能,交换机C上的端口将在Max_age计时器到达后转换为loop-inconsistent的状态,该状态无法通过用户流量,自然也就不会产生环路(loop-inconsistent状态实际上就是Blocking状态)。该功能应开启在根端口和备用端口上。

生成树Toolkit的更多相关文章
- 图的生成树(森林)(克鲁斯卡尔Kruskal算法和普里姆Prim算法)、以及并查集的使用
图的连通性问题:无向图的连通分量和生成树,所有顶点均由边连接在一起,但不存在回路的图. 设图 G=(V, E) 是个连通图,当从图任一顶点出发遍历图G 时,将边集 E(G) 分成两个集合 T(G) 和 ...
- 使用 Windows Phone Toolkit 的 Tilt 效果
上一篇文章分享了如何使控件具有摁下的效果(在WindowsPhone中使控件具有Tilt效果),实现方式是在项目中添加新的类文件,其实,如果项目引用了Windows Phone Toolkit,那么就 ...
- Coding4Fun Toolkit支持本地化解决办法
在项目中需要使用Coding4Fun Toolkit中的TimePicker控件, 1. 但是在中文系统下显示的却是英文: 2. 最后发现,需要在源代码中添加中文资源,并重新编译出包含中文语言的dll ...
- Windows Phone Toolkit 的 DatePicker 控件本地化的问题
用到 The Windows Phone Toolkit 里的 DatePicker 控件,但是多语言的时候出现了问题: 手机设置为中文,虽然月份跟星期有效,但是 Title 却还是默认的语言:CHO ...
- C# extended toolkit propertygrid 隐藏部分属性
该方法是通过更改ShowDetail的状态来实现的隐藏属性 首先在引用里右键 管理NuGet程序包 查找extended wpf toolkit 并安装 然后在MainWindow.xaml添加引用 ...
- 【ToolKit】轻量级JS库
优点: 丢弃了一些不常用的方法(jQuery.fn):slideUp.fadeIn.animate等: 新增获取子节点的方法(ToolKit.fn):firstChild,lastChild等: 新增 ...
- C# 使用Silverlight toolkit Chart
一.基础介绍 Silverlight ToolKit是微软发布的基于Microsoft-Public License(MS-PL)许可协议的控件集.MS-PL许可协议允许商业或非商业的发布,所以我们可 ...
- NOIP 2013 货车运输 最大生成树加DFS巧妙AC
#include<set> #include<map> #include<cmath> #include<queue> #include<stac ...
- Enhanced Mitigation Experience Toolkit 软件安全性强化工具
Enhanced Mitigation Experience Toolkit软件是微软为应对互联网中层出不穷的漏洞而推出的一款安全工具,可以在Window Update未获取到补丁前,对系统进行保护. ...
随机推荐
- 组合&反射&面向对象内置函数
内容概要 组合 反射 面向对象的内置函数 异常 内容详细 一.组合 组合:在对象中定义一个属性,属性的值是另一个对象 除了继承父类的方法,这是获取另一个类中属性的另一种方式 如果想给学生对象添加课程属 ...
- 5道面试题,拿捏String底层原理!
原创:微信公众号 码农参上,欢迎分享,转载请保留出处. String字符串是我们日常工作中常用的一个类,在面试中也是高频考点,这里Hydra精心总结了一波常见但也有点烧脑的String面试题,一共5道 ...
- WPF之复选MVVM TreeView(TreeView+CheckBox)
需求背景: 当我们用到权限菜单栏时权限菜单栏属于递归效果,我们需要用到TreeView+CheckBox进行组合复选开发时,我们需要解决此类问题时怎么办,那么就引出今天的小笔记内容 实现方式: 下载M ...
- 开源GenICam项目上手-1
GenICam 说明 一个统一的编程规则,这样我们只需要一个应用软件,就可以支持符合标准的不同型号相机,当我们升级相机.更换相机时,不需要编写不同的软件代码. The goal of GenICamT ...
- python-利用faker模块生成测试数据
Python-利用faker模块生成测试数据 1.前言: Faker模块是一个生成伪数据的第三方模块,他提供了一系列方法,使用非常方便,在做自动化测试时,注册信息,用这个模块生成测试数据就体现了它的好 ...
- Linux下/目录 、/home目录 、~目录的区别
/ :根目录 ,所有目录的最顶层目录,从任何用户执行该命令都会进入同一个目录,即所有用户共享.如下图: /home:/下面的home目录,名为家目录,但是很多人叫为用户列表目录,因为/home下是这台 ...
- 李宏毅机器学习笔记——新手感悟——PM2.5作业
python也不会,计算机也不会,啥都不会,只带了个脑子考了计算机研究生.研究生选了人工智能方向.看来注定是漫长的学习之旅. PM2.5作业,我是一个字都看不懂.所以我采用了直接看答案的方案.把答案看 ...
- String类型转int类型方法
System.out.println( "Integer.parseInt(\"5\") =" + Integer.parseInt("5" ...
- Oracle sqlplus 常用命令总结
转至:https://blog.csdn.net/iteye_20746/article/details/81801309?utm_medium=distribute.pc_relevant.none ...
- idea教程--使用mave创建普通java项目
1.点击箭头所示的"Create New Project"选项 2.勾选图示所示的"Create From Archetype"复选框,在下面的下拉选项中我们选 ...