网络运维与网络安全 学习笔记 第二十天
今日目标
STP工作原理、STP高级配置、MSTP工作原理
MSTP配置案例、MSTP负载均衡
STP工作原理
单点故障
PC之间的互通链路仅仅存在1个
任何一个设备或链路出现问题,PC之间都会无法通信
解决方案
增加冗余/备份设备
增加冗余/备份链路
新的问题
数据环路导致的广播风暴
每个链路都是互通的
交换机收到无法识别的数据帧后进行广播,形成广播风暴
广播帧在交换机之间一直循环下去,从而消耗系统资源,降低传输质量
广播帧的不断增多,还会导致设备宕机重启
STP概述
STP - Spannig Tree Protocol(生成树协议)
逻辑上断开链路,防止广播风暴的产生。即阻塞某些端口,破除环路。
当主线路故障,阻塞接口被激活;主线路恢复,备份下路再次被阻塞。
STP工作原理
步骤一:确定交换机角色
根交换机
非根交换机
步骤二:确定端口角色
根端口
指定端口
非指定端口
步骤三:确定端口状态
禁用:接口没有启动STP,或者接口处于关闭状态
侦听:正在比较STP报文,确定交换机和端口角色
学习:正在学习MAC地址表
转发:可以正常接收和发送用户数据包
阻塞:阻塞端口,不能转发用户数据包
网桥ID
网桥ID(BID)
STP协议为交换机取的名字,用于在交换网络中唯一标识该设备
通过比较每隔交换机的BID,来选举根交换机:BID越小越好
确定交换机角色
根据网桥ID,选择根交换机
确定端口角色
首先选举根端口
每一个非根交换机上,有且只有1个,距离根交换机最近的端口
其次选举指定端口
每一个链路上,有且只有1个,距离根交换机最近的端口
最后确定非指定端口
除了根端口和非指定端口,剩余所有端口都叫做非指定端口
端口角色的选举原则
首先比较端口到根交换机的开销,越小越好
其次比较端口所在交换机的BID,越小越好
最后比较端口的PID,越小越好
选举根端口
路径成本,默认情况下千兆链路成本为20000,百兆链路为200000
端口标识(Port Identifier)
端口标识越小越优先,由端口优先级和端口号两部分组成,端口优先级可配置,默认128
在非根网桥上,选择一个根端口(RP)
选举指定端口
在每个网段上,选择1个指定端口
距离根网桥的路径成本较小
网桥ID较小
端口ID较小
根桥上的端口全是指定端口
在每个网段选择一个指定端口(DP)
最后剩下的端口被阻塞
最终形成"数据转发路径" :
被"阻塞"的链路,作为"备份链路"
STP高级配置
BPDU
BPDU
Bridge Protocol Data Unit - 桥协议数据单元,即STP协议的报文
通过这种类型的报文,STP协议实现了自己的所有功能
BPDU类型
配置BPDU(configuration BPDU)
拓扑变更通知(TCN)BPDU
BPDU包含的关键字(4个),用于选举交换机角色和端口角色
BPDU选择根网桥
当交换机启动时,都假定自己时根网桥
在向外发送的BPDU中根网桥ID字段填写自己的网桥ID
当接收到其他交换机发出的BPDU后,比较网桥ID,选择较小的添加到根网桥ID中
当全网所有的交换机接收到全部的BPDU并作比较后,就可以选择除唯一的一个根网桥
STP的收敛
STP端口的5种状态
STP的3种计时器,用于维护STP转发路径及恢复STP故障链路
Hello时间:一个端口上发送BPDU的时间间隔,默认时2s;
转发延迟(Forward delay):端口在侦听和学习状态,分别停留的时间
最大老化时间(Max Age):一个端口最大的"没有接收BPDU"的时间间隔
STP的收敛时间为:30s~50s,非常慢
STP的配置命令
启动或关闭交换机的STP功能
默认情况下交换机的STP功能处于开启状态
Huawei\]stp { enable \| disable } **选择交换机的STP运行模式** 默认情况下交换机的STP运行模式为MSTP \[Huawei\]stp mode { stp \| rstp \| mstp } **修改交换机的STP优先级** 默认值为32768 \[Huawei\]stp priority {*priority* } **更改端口的STP cost,在端口上开启/关闭STP功能** \[Huawei\]interface gi0/0/11 \[Huawei-gi0/0/11\]stp cost {value} \[Huawei-gi0/0//11\]stp {enbale \| disable} **查看当前交换机运行的STP的模式、优先级、根交换机** **通过修改交换机的优先级来指定根交换机** **查看交换机的端口角色和状态** \[Huawei\]stp mode stp \[Huawei\]disable stp brief \[Huawei\]stp priority 4096 \[Huawei\]disable stp brief ### MSTP工作原理 **STP回顾** **弊端** 收敛时间慢:30s\~50s 设备利用率低 **方案** RSTP,快速生成树协议 MSTP,多生成树协议 **RSTP概述** **RSTP,即Rapid STP,快速生成树协议** 共有标准协议,俗称IEEE 802.1w,在STP的基础上优化而来 细化了端口角色 精简了端口状态 改变拓扑变更机制 引入了P/A机制 收敛时间,可以提升至毫秒级 **弊端** 和STP协议一样。整个交换网络中,仅仅存在一个生成树,所有的VLAN的数据转发路径是相同的。 交换机之间的多个链路,只能实现备份的租用, 永远只会使用其中的主链路转发数据,备份链路无法使用,从而无法提高设备利用率。 **MSTP概述** MSTP,即Multiple STP,多生成树协议 公有标准协议,俗称IEEE 802.1s,在RSTP的基础上优化而来 继承了RSTP的所有优点 引入了实例(instance)的概念,实现基于实例的负载均衡。 不但可以实现多个链路之间的备份,还可以提高多个链路的利用率 在MSTP中,可以存在很多个"生成树",称之为"实例" 默认情况下,所有的VLAN都属于同一个默认的实例 - Instance 0 可以基于需求,可以将不同的VLAN分配到不同的实例中 不同的实例,就是不同的"生成树",就对应着多个不用的"根" 每个"生成树"的形成过程,和RSTP都是类似的 **MSTP工作原理** **MSTP的工作过程,与STP/RSTP的流程,是类似的** **选举交换机角色(和stp协议,角色相同)** 根交换机 非根交换机 **选举端口角色(比stp协议,细化端口角色)** 根端口,指的是非根交换机上距离根交换机最近的口 指定端口,指的是网段上距离根交换机最近的口 替代端口,指的是非交换机上的"根端口"的替代端口 备份端口,指的是网段上的"指定端口"的备份端口 **确定端口状态(比stp协议,简化端口状态)** Discarding (丢弃),相当于STP中的禁用、侦听、阻塞,不转发用户数据 Learning (学习),和STP中的学习状态相同 Forwarding (转发),和STP中的转发状态相同 **配置思路** 每个交换机创建相同的VLAN 交换机之间的链路配置为Trunk,允许所有的VLAN通过 交换机启用STP协议,配置模式为MSTP 交换机指定MSTP的域名、实例和VLAN的对应关系 交换机上激活MSTP的配置 验证与测试MSTP的配置 ### MSTP配置案例   **需求描述** : VLAN10中存在2个终端设备,IP地址属于192.168.10.0/24网段 VLAN20中存在2个终端设备,IP地址属于192.168.20.0/24网段 配置MSTP,实现VLAN10的终端通信路径是:SW1-SW2 配置MSTP,实现VLAN20的终端通信路径是:SW3-SW4 **配置步骤** : ①配置PC1/PC2/PC3/PC4的IP地址 ②配置SW1/SW2/SW3/SW4的VLAN 、Trunk、Access undo terminal monitor system-view \[Huawei\]sysname SW1 \[SW1\]vlan batch 10 20 \[SW1\]interface gi0/0/12 \[SW1-Gigabitethernet0/0/12\]port link-type trunk \[SW1-Gigabitethernet0/0/12\]port trunk allow-pass vlan all \[SW1-Gigabitethernet0/0/12\]quit \[SW1\]interface gi0/0/13 \[SW1-Gigabitethernet0/0/13\]port link-type trunk \[SW1-Gigabitethernet0/0/13\]prot trunk allow-pass vlan all \[SW1-Gigabitethernet0/0/13\]quit \[SW1\]interface gi0/0/1 \[SW1-Gigabitethernet0/0/1\]port link-type access \[SW1-Gigabitethernet0/0/1\]prot default vlan 10 \[SW1-Gigabitethernet0/0/1\]quit undo terminal monitor system-view \[Huawei\]sysname SW2 \[SW2\]vlan batch 10 20 \[SW2\]interface gi0/0/12 \[SW2-Gigabitethernet0/0/12\]port link-type trunk \[SW2-Gigabitethernet0/0/12\]port trunk allow-pass vlan all \[SW2-Gigabitethernet0/0/12\]quit \[SW2\]interface gi0/0/13 \[SW2-Gigabitethernet0/0/13\]port link-type trunk \[SW2-Gigabitethernet0/0/13\]prot trunk allow-pass vlan all \[SW2-Gigabitethernet0/0/13\]quit \[SW2\]interface gi0/0/1 \[SW2-Gigabitethernet0/0/1\]port link-type access \[SW2-Gigabitethernet0/0/1\]prot default vlan 10 \[SW2-Gigabitethernet0/0/1\]quit undo terminal monitor system-view \[Huawei\]sysname SW3 \[SW3\]vlan batch 10 20 \[SW3\]interface gi0/0/12 \[SW3-Gigabitethernet0/0/12\]port link-type trunk \[SW3-Gigabitethernet0/0/12\]port trunk allow-pass vlan all \[SW3-Gigabitethernet0/0/12\]quit \[SW3\]interface gi0/0/13 \[SW3-Gigabitethernet0/0/13\]port link-type trunk \[SW3-Gigabitethernet0/0/13\]prot trunk allow-pass vlan all \[SW3-Gigabitethernet0/0/13\]quit \[SW3\]interface gi0/0/1 \[SW3-Gigabitethernet0/0/1\]port link-type access \[SW3-Gigabitethernet0/0/1\]prot default vlan 20 \[SW3-Gigabitethernet0/0/1\]quit undo terminal monitor system-view \[Huawei\]sysname SW4 \[SW4\]vlan batch 10 20 \[SW4\]interface gi0/0/12 \[SW4-Gigabitethernet0/0/12\]port link-type trunk \[SW4-Gigabitethernet0/0/12\]port trunk allow-pass vlan all \[SW4-Gigabitethernet0/0/12\]quit \[SW4\]interface gi0/0/13 \[SW4-Gigabitethernet0/0/13\]port link-type trunk \[SW4-Gigabitethernet0/0/13\]prot trunk allow-pass vlan all \[SW4-Gigabitethernet0/0/13\]quit \[SW4\]interface gi0/0/1 \[SW4-Gigabitethernet0/0/1\]port link-type access \[SW4-Gigabitethernet0/0/1\]prot default vlan 20 \[SW4-Gigabitethernet0/0/1\]quit ③配置MSTP(SW1/2/3/4的基本MSTP配置,都相同) \[SW1\]stp mode mstp \[SW1\]stp region-configuration \[SW1-mst-region\]region-name HCIE \[SW1-mst-region\]instance 1 vlan 10 \[SW1-mst-region\]instance 2 vlan 20 \[SW1-mst-region\]active region-configuration ④配置SW1为VLAN10 的根交换机 \[SW1\]stp instance 1 priority 0 ⑤配置SW3为VLAN20的根交换机 \[SW3\]stp instance 2 priority 0 ### MSTP负载均衡 **STP/RSTP的弊端** 所有的VLAN公用一个"生成树",防止环路的同时只能确保一半的设备得到利用,另外一半的设备仅仅用作"备份",无法提高设备的利用率 **MSTP负载均衡** 不同的VLAN关联到不同的实例 不同的实例的根交换机放置在不同的交换机上 不同的VLAN通过不同的根交换机进行数据的转发,从而确保提高设备的利用率,同时设备之间还能实现备份 **需求描述** : PC1属于VLAN10,IP地址为192.168.10.1/24,网关为192.168.10.254 PC2属于VLAN20,IP地址为192.168.20.1/24,网关为192.168.20.254 确保PC1与PC2互通 合理配置MSTP,确保PC1与PC2之间的互通路径是最优的   配置步骤: ①配置PC1/2的IP地址 ②配置SW1/SW2/SW3的基本信息 创建VLAN10和20 配置交换机之间的链路为Trunk,并允许vlan10和20 配置交换机与PC/路由器之间的链路为Access,并加入到正确的VLAN ③配置MSTP(SW1/2/3的配置相同) stp mode mstp stp region-configuration region-name HCIE instance 1 vlan 10 instance 2 vlan 20 active region-configuration quit ④配置主根与次根 \[SW1\]stp instance 2 priority 4096 \[SW1\]stp instance 1 priority 8192 \[SW2\]stp instance 1 priority 4096 \[SW2\]stp instance 2 priority 8192 ⑤查看负载均衡 \[SW1\]display stp brief \[SW2\]display stp brief \[SW3\]display stp brief