生成树协议(思科)

#交换设备

生成树协议(STP)

目的

  • 1.理解生成树的原理
    • 理解STP的选举过程
  • 2.会配置STP

为什么只有交换机0的f0/1接口变成了阻塞状态?

  • 在环形的交换网络中,如果所有的接口都通畅,会形成闭回路,造成网路风暴

一、STP生成树协议

1.什么是生成树协议

  • 防止交换机冗余链路产生环路,避免广播风暴

3.STP的工作原理

  • 1.选择根网桥(根交换机),此时交换机2是根交换机

    • 比较网桥ID,ID较小的为根交换机
      • 网桥ID:两部分
        • 网桥优先级 数值最小:默认是32768,可以有管理员进行更改(注意:需要设置为4096 的倍数)
          • 根网桥上的端口是不可能被阻塞的
        • 网桥MAC地址
  • 2.选择根端口

    • 根路径成本最少的:其他交换机的端口到达根交换机的路径成本

    • 与根网桥直连网桥ID最小的

    端口ID最小:默认是128
  • 3.选择指定端口

    • 根网桥上的所有端口全是指定端口
    • 需要在每个网段上选择一个指定端口
    • 非根网桥上选指定端口
      • 路径成本最小
      • 网桥ID最小
      • 端口ID最小
  • 4.没有被选中的端口就是阻塞端口

三、STP的其他概念

1.STP收敛

  • 收敛:整个网络达到一致的情况
    • 收敛的过程中,端口的5种状态
      • 禁用:down
      • 阻塞:不发送数据,也不会进行MAC地址的学习,只会去侦听STP报文(BPDU)(拓扑变更公告)
      • 侦听:可以收发BODU,不会进行MAC地址学习
      • 学习:可以收发BPDU,并可以进行MAC地址学习,不会转发数据
      • 转发:正常转发业务数据帧

2.计时器

  • hello时间
  • 转发延时
  • 最大老化时间

四、配置

问题:交换机上是有vlan划分,当划分了广播域,是不是就阻挡了广播,所以不同的vlan具有不同的STP,1个vlan一棵树

1.单生成树

  • 交换机上只有1个vlan

  • 1.设置网桥优先级

    shell 复制代码
      conf t
      spanning-tree vlan 1 priority 4096     #设置SW2优先级为最高
      show spanning-tree bri                 #查看生成树
      ......
      
      Interface                                   Designated
      Name                 Port ID Prio Cost  Sts Cost  Bridge ID            Port ID
      -------------------- ------- ---- ----- --- ----- -------------------- -------
      FastEthernet0/6      128.7    128    19 FWD     0  4096 cc03.1124.0000 128.7
      FastEthernet0/10     128.11   128    19 FWD     0  4096 cc03.1124.0000 128.11
      ......                               #可以看到是FWD,不是BLK,所以当前交换机已经设置为根网桥
  • 指定SW3的f0/3接口阻塞

    • 直接设置SW1的优先级高于SW3
    shell 复制代码
      设置SW1优先级为第二高
      conf t
      sapnning-tree vlan 1 priority 8192
      
      此时查看SW3的生成树信息
      SW3#show spanning-tree bri
      
      VLAN1
        Spanning tree enabled protocol ieee
        Root ID    Priority    4096
                   Address     cc03.1124.0000
                   Cost        19
                   Port        9 (FastEthernet0/8)
                   Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec
      
        Bridge ID  Priority    32768
                   Address     cc02.3d84.0000
                   Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec
                   Aging Time 300
      
      Interface                                   Designated
      Name                 Port ID Prio Cost  Sts Cost  Bridge ID            Port ID
      -------------------- ------- ---- ----- --- ----- -------------------- -------
      FastEthernet0/3      128.4    128    19 BLK    19  8192 cc01.154c.0000 128.2
      FastEthernet0/8      128.9    128    19 FWD     0  4096 cc03.1124.0000 128.11
                                  #可以看到0/3接口是BLK,被阻塞

2.多生成树

  • 交换机上有多个vlan
shell 复制代码
conf t
spanning-tree vlan 1 priority 4096     #设置SW2优先级为最高 使他成为vlan1的根网桥

3.其他配置

  • 1.直接指定根网桥

    • 这条命令一旦执行,会使该交换机的优先级降4096,从而使得优先级数是三个里面最低的
    shell 复制代码
      conf t
      sapnning-tree vlan 1 root primary   #直接指定该交换机位为根网桥
  • 2.直接修改端口成本(端口成本由带宽决定)

    shell 复制代码
      conf t
      int f0/2 
      sapnninig-tree vlan 1 cost 19   #设置该接口的成本为19
  • 3.修改端口的优先级

    shell 复制代码
      conf t
      int f0/2 
      sapnninig-tree vlan 1 port-priority 64    #设置该接口的优先级为64(默认为128)
相关推荐
Spring_java_gg3 分钟前
如何抵御 Linux 服务器黑客威胁和攻击
linux·服务器·网络·安全·web安全
blammmp11 分钟前
Java:数据结构-枚举
java·开发语言·数据结构
何曾参静谧23 分钟前
「C/C++」C/C++ 指针篇 之 指针运算
c语言·开发语言·c++
暗黑起源喵29 分钟前
设计模式-工厂设计模式
java·开发语言·设计模式
WaaTong34 分钟前
Java反射
java·开发语言·反射
Troc_wangpeng35 分钟前
R language 关于二维平面直角坐标系的制作
开发语言·机器学习
努力的家伙是不讨厌的37 分钟前
解析json导出csv或者直接入库
开发语言·python·json
Envyᥫᩣ1 小时前
C#语言:从入门到精通
开发语言·c#
童先生1 小时前
Go 项目中实现类似 Java Shiro 的权限控制中间件?
开发语言·go
lulu_gh_yu1 小时前
数据结构之排序补充
c语言·开发语言·数据结构·c++·学习·算法·排序算法