Fast Converge
- Port Fast
- Global: spanning-tree portfast default
- Interface: spannint-tree portfast
Secure the STP
- Root Guard
- spanning-tree guard root
- 防止新接入的Switch称为Root Bridge
- 如果在配置了 root guard 的端口上,收到了superior BPDU, root guard 会把这个端口置为 root-inconsistent STP 状态,等效于 err-disable ,不会有流量转发
- BPDU Guard
- 在配置了BPDU Guard的端口上,收到BPDU,端口就会被置为 err-disable 。—— 例如:在本该使用PC的端口上使用了Switch
- Global :
- 只在Portfast 状态端口生效
- Interface
- 不管是不是Portfast,不管是不是 access/trunk ,都生效
- 进入 err-disable 后有2种恢复
- 手动 shut no shut
- errdiable recovery cause bpdugurad
- 修改默认的恢复时间 : errdisable recovery interval XX sec
- Root Guard vs BPDU Guard
- BPDU Guard —— 一旦收到,就进入 err-disable
- Root Guard —— 收到Superior BPDU,才会进入
- BPDU Filter
- 很危险,很容易导致环路,不适用于生产环境
- 只有处于portfast 状态的端口才生效,
- Global
- spannint-tree portfast budufilter default
- 不过滤 incoming BPDU,但是过滤大部分的 outgoing (只有最开始的可以发出去)
- 如果在配置Global BPDU Filter的端口上收到BPDU,会disable 掉自己的Portfast 和 BPDU Filter,然后正常参与 生成树计算(因为意识到对面是交换机)
- Interface
- spannint-tree bpdufilter enable
- 过滤掉全部的incoming 和 outgoing ,相当于关闭了生成树计算
- 不发送BPDU就意味着不参与STP
- Port Security
Loop Prevention
- Loop Guard
- 为什么在防环的协议里还有防环工具—— STP是物理链路防环,还需要逻辑链路防环
- 开启了 Loop Guard的端口上,从Block 向 Forward转换时,不会去到 Forward,而是到 loop inconsistent 的状态
- 需要在 non-designated 端口上开启
- UDLD —— unidirectional link detection protocol
- 交换机发送UDLD数据包,包括端口ID,对面收到后加上自己的,再发回来。然后发送者检查UDLD种有没有自己的ID,如果有,证明链路是通的
- 2种模式
- aggressive : 检测到UDLD 超时,就进入 err-disable
- normal : 检测到UDLD 超时,不进入 err-disable,取决于生成树状态?
- Loop Guard vs UDLD
- Loop Guard 是 Per-Vlan 的,而UDLD 是Per-Port 物理端口