当前位置: 首页 > news >正文

计算机网络 - stp生成树实验

【实验假设】

  • 我们使用 Cisco Packet Tracer 或类似的模拟软件,或物理的 Cisco 交换机。

  • 交换机初始为默认配置(或已通过 write erase 和 reload 清除配置)。

  • PC 已配置 IP 地址如下(示例):

    • PC0: 192.168.1.11 / 255.255.255.0

    • PC1: 192.168.1.22 / 255.255.255.0

    • PC2: 192.168.1.33 / 255.255.255.0

    • PC3: 192.168.1.44 / 255.255.255.0

【实验步骤】

第一部分:观察无生成树协议时的问题

  • 目标:理解在没有 STP 的冗余拓扑中出现的广播风暴、MAC 地址漂移和网络不稳定现象。

  1. 构建拓扑:

    • 在工作区放置四台 2960 交换机(或类似型号)。标记为 SW0, SW1, SW2, SW3。

    • 放置四台 PC。标记为 PC0, PC1, PC2, PC3。

    • 使用直通双绞线按照 OCR 第 1 页的图示连接设备:

      • PC0 -> SW0 (Fa0/1)

      • PC1 -> SW1 (Fa0/1)

      • PC2 -> SW2 (Fa0/1)

      • PC3 -> SW3 (Fa0/1)

      • SW0 (Fa0/24) <-> SW1 (Fa0/24)

      • SW0 (Fa0/22) <-> SW1 (Fa0/22)

      • SW0 (Fa0/23) <-> SW2 (Fa0/22)

      • SW1 (Fa0/23) <-> SW3 (Fa0/22)

      • SW2 (Fa0/24) <-> SW3 (Fa0/24)

      • SW2 (Fa0/23) <-> SW3 (Fa0/23)

    • (注意:请仔细检查您的连接是否与您使用的拓扑图完全一致,特别是 SW2 和 SW3 之间的连接。)

  2. 配置 PC IP 地址:

    • 点击 PC0 -> 桌面 (Desktop) 选项卡 -> IP 配置 (IP Configuration)。

    • 输入 IP 地址:192.168.1.11,子网掩码:255.255.255.0。

    • 对 PC1 (192.168.1.22), PC2 (192.168.1.33), PC3 (192.168.1.44) 重复此操作。

  3. 禁用生成树协议:

    • 点击 SW0 -> CLI 选项卡。

    • 输入以下命令:

            enable
      configure terminal
      no spanning-tree vlan 1  # 在 VLAN 1 上禁用 STP
      end
    • 在 SW1, SW2, 和 SW3 上重复这些命令。

    • (注意:STP 在 Cisco 交换机上通常默认启用。此步骤是为了观察目的确保它已关闭)。

  4. 测试连通性并观察问题:

    • 在 PC0 上,打开命令提示符 (Command Prompt)。

    • 启动到 PC2 的持续 ping:

            ping -t 192.168.1.33
    • 观察现象: 查看 ping 的结果。您很可能会看到:

      • 频繁或完全出现 Request timed out.(请求超时)。

      • 可能偶尔有零星的回复。

      • (在模拟器或物理设备上)观察交换机上的链路指示灯过度闪烁,表明存在广播风暴。如果可以检查交换机 CPU 利用率,会发现非常高。检查 MAC 地址表 (show mac address-table) - 你可能会看到同一个 MAC 地址在不同端口之间快速切换(MAC 地址漂移)。这证明了二层环路导致的不稳定性。

    • 观察到现象后,在 PC0 上按 Ctrl+C 停止 ping。

第二部分:配置和验证 STP (802.1D)

  • 目标:实施标准 STP 以防止环路,并观察其收敛过程。

  1. 启用 STP (802.1D 模式):

    • 在 SW0 -> CLI 选项卡:

            enable
      configure terminal
      spanning-tree mode pvst
      spanning-tree vlan 1       # 为 VLAN 1 启用/确保启用 STP
      end
    • 在 SW1, SW2, 和 SW3 上重复这些命令。

  2. 等待收敛: STP (802.1D) 需要时间(30-50秒)使端口经历 阻塞 -> 侦听 -> 学习 -> 转发 状态转换。等待大约 1 分钟。

  3. 验证 STP 状态:

    • 每台交换机 (SW0, SW1, SW2, SW3) 上运行命令:

            show spanning-tree vlan 1
    • 观察现象:

      • 识别根桥 (Root Bridge): 查找显示 “This bridge is the root” 的交换机。根据最低的 MAC 地址(来自 OCR 第 1 页:SW3 的 MAC 为 ...01E1),如果优先级都是默认值 (32768),SW3 应该是根桥。

      • 识别端口角色/状态: 在非根桥 (SW0, SW1, SW2) 上,识别 根端口 (Root Port - Root) - 到根桥路径开销最低的端口。识别 指定端口 (Designated Port - Desg) - 将流量转发到某个网段的端口。识别 阻塞端口 (Blocked Port - BLK) - 被 STP 逻辑关闭以防止环路的端口。注意 Cost(开销)和 Sts(状态:FWD, LIS, LRN, BLK)。每个环路中至少应有一个端口处于 BLK 状态。

      • 例如: 在 SW0 上,检查输出。将其与 OCR 第 1 页的输出进行比较(尽管那个显示的是 RSTP,但结构类似)。识别哪个端口是根端口、指定端口或阻塞端口。

  4. 测试连通性:

    • 在 PC0 上,打开命令提示符。

    • 启动到 PC2 的持续 ping:

            ping -t 192.168.1.33
    • 观察现象: Ping 现在应该是稳定的,有持续的回复。STP 已经创建了一个无环路的拓扑。

    • 按 Ctrl+C 停止 ping。

  5. (可选) 影响根桥选举:

    • 在 SW0 -> CLI 选项卡:

            configure terminal
      spanning-tree vlan 1 priority 4096  # 设置一个较低的优先级使 SW0 成为根桥
      end
    • 等待约 1 分钟收敛。

    • 在所有交换机上再次运行 show spanning-tree vlan 1。

    • 观察现象: SW0 现在应该报告 “This bridge is the root”。观察 SW1, SW2, SW3 上的根端口和阻塞端口是如何变化的。

    • 如果需要,重置 SW0 上的优先级:

            configure terminal
      no spanning-tree vlan 1 priority
      end

第三部分:配置和验证 RSTP (802.1W)

  • 目标:实施 RSTP 并观察其比 STP 更快的收敛速度。

  1. 启用 RSTP 模式:

    • 在 SW0 -> CLI 选项卡:

            enable
      configure terminal
      spanning-tree mode rapid-pvst # 设置模式为 RSTP (Cisco 常用 rapid-pvst)
      end

      (注意:rapid-pvst 是 Cisco 针对每个 VLAN 的快速 STP 实现。根据您的设备或实验指导,也可能使用 spanning-tree mode rstp 命令。)

    • 在 SW1, SW2, 和 SW3 上重复这些命令。

  2. 验证 RSTP 状态:

    • RSTP 收敛速度快得多(几秒钟内)。

    • 每台交换机上运行:

            show spanning-tree vlan 1
    • 观察现象:

      • 根桥应该和之前一样(除非更改了优先级,否则可能是 SW3)。

      • 注意端口角色:根端口 (Root Port - Root), 指定端口 (Designated Port - Desg), 替代端口 (Alternate Port - Altn), 备份端口 (Backup Port - Back)。替代端口提供了一条朝向根桥的备用路径(但不是根端口),是阻塞状态的一种。

      • 注意端口状态:FWD (转发), LRN (学习), DISC (丢弃)。阻塞/侦听状态合并为丢弃状态。

  3. 测试 RSTP 收敛(故障模拟):

    • 识别活动路径: 根据 show spanning-tree 输出(特别是 SW0 上的根端口),确定从 PC0 到 PC3 的当前活动路径。例如,如果 SW0 的 Fa0/22 是根端口,路径可能是 PC0 -> SW0 -> SW1 -> SW3 -> PC3 (需要检查 SW1 和 SW3 上的端口状态确认)。

    • 启动 Ping: 在 PC0 上,启动到 PC3 的持续 ping:

            ping -t 192.168.1.44

      等待稳定的回复。

    • 模拟链路故障: 在 SW0 -> CLI 选项卡 (假设 Fa0/22 是当前活动路径上的根端口):

            configure terminal
      interface FastEthernet0/22
      shutdown                   # 关闭端口模拟链路故障
      end
    • 观察收敛: 密切关注 PC0 上的 ping 输出。在回复恢复之前,你应该只看到很少(可能是 0-2 个)Request timed out. 消息。这证明了 RSTP 的快速收敛。

    • 验证新路径: 在 SW0 上再次运行 show spanning-tree vlan 1。Fa0/22 应该处于 DOWN(关闭)或 DISCARDING(丢弃)状态。另一个端口(例如 Fa0/23 或 Fa0/24)现在应该成为了根端口(状态变为 FWD)。检查其他交换机,看看角色可能发生了什么变化。

    • 恢复链路: 在 SW0 -> CLI 选项卡:

            configure terminal
      interface FastEthernet0/22
      no shutdown                # 重新启用端口
      end
    • 观察恢复: 观察 ping 输出。当原始路径被 RSTP 快速恢复时,回复应保持稳定或几乎立即恢复。使用 show spanning-tree vlan 1 验证 Fa0/22 是否回到了其原始角色(很可能是根端口,FWD 状态)。

    • (可选) 重复: 尝试关闭其他活动或备用链路(例如,如 OCR 第 3 页建议的在 SW0 上关闭 interface FastEthernet0/23 或 interface FastEthernet0/24)并观察收敛情况。

相关文章:

  • 【现代深度学习技术】现代循环神经网络03:深度循环神经网络
  • MCP 探索:微软 Microsoft MarkItDown MCP ,可把 Word、Excel 等转换成 MarkDown 格式
  • sys目录介绍
  • 基于YOLOV5的目标检测识别
  • 多模态人工智能研究:视觉语言模型的过去、现在与未来
  • 【Git】万字详解 Git 的原理与使用(上)
  • 第 13 届蓝桥杯 C++ 青少组省赛中 / 高级组 2022 年真题
  • 【东枫电子】AMD / Xilinx Alveo™ UL3422 加速器
  • 【愚公系列】《Manus极简入门》012-自我认知顾问:“内在探索向导”
  • Golang 身份证号码校验
  • 【优选算法 | 位运算】位运算基础:深入理解二进制操作
  • ASP.NET MVC​ 入门与提高指南七
  • < 自用文 Texas style Smoker > 美式德克萨斯烟熏炉 从设计到实现 (第一部分:烹饪室与燃烧室)
  • 基于Redis实现-UV统计
  • openEuler 22.03 安装 Mysql 5.7,RPM 在线安装
  • 解决 3D Gaussian Splatting 中 SIBR 可视化组件报错 uv_mesh.vert 缺失问题【2025最新版!】
  • 组件通信-v-model
  • [Control-Chaos] Toxic Cascade(毒性級鏈)
  • 青少年编程与数学 02-018 C++数据结构与算法 22课题、并行算法
  • linux的信号量初识
  • “矿茅”国际化才刚开始?紫金矿业拟分拆境外黄金矿山资产于港交所上市
  • 即日起,“应急使命·2025”演习公开征集新质救援能力
  • 马上评|科学谋划“十五五”,坚定不移办好自己的事
  • 贵州茅台一季度净利268亿元增长11.56%,系列酒营收增近两成
  • 农业农村部:把住能繁母猪存栏量“总开关”,引导养殖场户优化母猪存栏结构、合理控制产能
  • 招行一季度净利372.86亿降2.08%,营收降逾3%