逻辑上断开环路,防止广播风暴的产生
当线路故障,阻塞接口被激活,恢复通信,起备份线路的作用
先假设,如下图所示,PC1和PC2通过交换机相连,通信过程如下
在这里插入图片描述
1、网络通信刚开始时,PC1的ARP条目中没有PC2的MAC地址,所以会发送ARP广播请求(请求PC2的MAC地址)给交换机SW1
2、SW1收到后会将广播帧从除了接收端口之外的所有端口转发出去(即该广播从F0/1和F0/2分别转发给SW2和SW3)
3、SW2收到广播帧后,同样根据交换机转发原理,将广播帧从F0/2和连接PC2的端口转发;SW3收到后也同理,会从F0/2转发给SW2
4、SW2从F0/2的端口收到SW3发送的广播帧后,将其从F0/2端口和连接PC2的端口转发;同样,SW3收到SW2的广播帧后,将其从F0/1转发
5、SW1分别SW2、SW3收到广播帧,然后又将SW2收到的广播帧转发给SW3,再将SW3收到的广播帧转发给SW2
就这样,SW1、SW2与SW3将广播帧相互转发,网络就会形成一个环路,而交换机之间的默认转发原理就会导致广播帧在这个环路中无线循环下去最终形成广播风暴导致网络瘫痪
1、PC1向外发送一个单播帧,假设此单播帧的目的MAC地址在网络中所有交换机的MAC地址表中都暂时不存在
SW1收到此数据帧之后,在MAC地址表中生成一个MAC地址表项,AAAA-AAAA-AAAA,对应端口为F0/3,并将其从F0/1和F0/2端口转发给SW3和SW2
2、SW3接收到此帧后,由于MAC地址表中没有对应此帧目的MAC地址的表项,生成MAC地址表:AAAA-AAAA-AAAA,对应端口号为F0/1,然后SW3会将此帧从F0/2转发到SW2,
3、SW2接收到此帧后,会转发给SW3,SW3收到后生成MAC地址表:AAAA-AAAA-AAAA,对应端口号为F0/2
这种广播风暴只有在物理环路消失时才可能停止
但是环路的物理线路能够为网络提供备份路线,提供可靠性,是必要的,这时STP就是用来在逻辑上断开环路,防止广播风暴产生
网桥ID是唯一的
选择交换网络中的网桥ID最小的交换机成为根网桥
由两个部分组成:网桥优先级和网桥的MAC地址
取值范围:0~65535
缺省值(默认值):32768
比较根网桥是先比较优先级看哪个小,如果一样,再比较MAC地址哪个小
指定端口在根网桥上,直连路线的对端网桥口是网桥端口
比较这两个网桥ID,先比较优先级看哪个小,一样再比较MAC地址哪个小,小的一方的另一个端口是网桥端口,而另一方的是阻塞端口。
BPDU是个传输载体,用来交换机之间交换网桥ID、根路径成本等信息**
桥协议数据单元—(Bridge Protocol Data Unit )
使用组播发送BPDU
配置BPDU
拓扑变更通告(TCN)BPDU
根网桥ID、根路径成本、发送网桥ID、端口ID
当交换机启动时,假定自己是根网桥,在向外发送的BPDU中根网桥ID字段填写自己的网桥ID
即STP的计时器
—可为每个vlan或者多个vlan为一组构造一个生成树,实现网络的负载分担(均衡)2
-----------将sw1、SW2分别做vlan10、vlan20的根网桥-------
命令总集
[sw1]stp mode mstp###将交换机配置成MSTP模式,MSTP兼容STP/RSTP。
[sw1jstp region-configuration###进入MSTP域视图MSTP配置模式
[sw1-mst-region] region-name huawei1###配置MSTP域的域名为huawei1,缺省为交换设备主控板上管理网口的MAc地址。
[sw1-mst-region] revision-level 1##配置MsT域的MiSTP修订级别为1,缺省情况下MST域的MSTP修订级别为o,需要将各设备的MSTP修订级别修改为一致
###配置多生成树实例和vLAN的映射关系,同一vlan的数据只能对应一个实例,而一个实例可以对应多个vlan (instancel vlan 2 to 10)
[Sw1-mst-region]instance 1 vlan 10
###将vlan 10加入实例1中
[Sw1-mst-region]instance 2 vlan 20
###将vlan 20加入实例2中
[Sw1-mst-region] check region-configuration
###查看MsTP域配置参数
[ Sw1-mst-region] active region-configuration
###激活MSTP域的配置(必预配置)
[sw1-mst-region]quit
###退出配置模式
[Sw1]stp instance 1 root primary
###配置此交换机为实例1的主根桥
[sw1]stp instance 2 root secondary
###配置此交换机为实例2的备份根桥
接下来是实验
首先在ensp创建下图所示的配置图
AR1:**进入系统,改名,关提示
sw1,sw2,sw3先创建VLAN10 和 VLAN20----vlan batch 10 20
[R1]---int a0/0/0-----进入端口
[R1-GigabitEthernet0/0/0]---ip address 192.168.10.1(网关地址) 24(子网掩码)---配置网关
[R1-GigabitEthernet0/0/0]---undo shutdown-----检查端口是否开启
[R1-GigabitEthernet0/0/0]---int g0/0/1----继续配置下一个网关
[R1-GigabitEthernet0/0/1]---display this查看当前配置信息
进入SW1
将交换机配置成MSTP模式----stp mode mstp
[sw1-------jstp region-configuration###进入MSTP域视图MSTP配置模式
[sw1-mst-region] -----region-name huawei1###配置MSTP域的域名为huawei1,缺省(默认)为交换设备主控板上管理网口的MAc地址。
[sw1-mst-region] ------revision-level 1###配置MsT域的MiSTP修订级别为1,缺省情况下MST域的MSTP修订级别为o,需要将各设备的MSTP修订级别修改为一致(我们默认为1)
[Sw1-mst-region]----instance 1 vlan 10###将vlan 10加入实例1中
[Sw1-mst-region]----instance 2 vlan 20###将vlan 20加入实例2中
[Sw1-mst-region]---- check region-configuration###查看MsTP域配置参数
[ Sw1-mst-region] ----active region-configuration###激活MSTP域的配置(必须配置)
[ Sw1-mst-region] ----dis this 查看目前模式配置情况
[ Sw1-mst-region]----quit
[Sw1]----stp instance 1 root primary###配置此交换机为实例1的主根桥
[Sw1]----stp instance 2 root secondary###配置此交换机为实例2的备份根桥
接下来配置SW2进行和SW1一样的命令,只不过,配置交换机为实例的部分需要更改,如下图所示
接着配置SW3
因为是先配置连接主机端的两个端口,所以连接主机端的模式为access
【sw3】int e0/0/1
【sw3-Ethernet0/0/1】port link-type access
【sw3-Ethernet0/0/1】port default vlan 10(对应主机端的VLAN)
然后是第二个接口
【sw3-Ethernet0/0/1】int e0/0/2
【sw3-Ethernet0/0/2】p l a
【sw3-Ethernet0/0/2】p d v 20(对应主机端的VLAN)
这一步就算完成了
检查所有配置情况(记得先退出模式)
-----dis interface brief
之后再对SW3的另两个连接交换机的接口进行配置(因为是交换机连接的交换机所以配置模式为Trunk)
【sw3】---int 0/0/3
【sw3-Ethernet0/0/3】---port link-type trunk---(定义二层端口模式)
【sw3-Ethernet0/0/3】---port trunk all-pass vlan all---(配置trunk端口允许通过vlan)
然后是第二个接口
【sw3-Ethernet0/0/3】---int e0/0/4
【sw3-Ethernet0/0/4】---p l t
【sw3-Ethernet0/0/4】---p t a v a
回到SW1配置接口地址信息(可以按顺序从下到上进行配置)
e0/0/1和e0/0/3连接的是交换机,所以配置模式是trunk
e0/0/2连接的是路由器,所以配置模式为access(单臂路由里为trunk)
再到SW2里配置接口地址信息(依然可以按照从下到上的接口顺序进行配置)
和SW1一样e0/0/1和e0/0/3连接的是交换机,所以配置模式是trunk
e0/0/2连接的是路由器,所以配置模式为access(单臂路由里为trunk)
最后试着ping
这样就成了!