H3C MST BPDU 交换失败

网络工程 生成树 生命值 IEEE-802.1w IEEE-802.1s
2021-07-09 22:28:08

我遇到了以下 MST 问题。

在 HP5940 网络核心和 HP5130 网络接入层之间,我使用了 5 个 MST 实例,配置如下:

核心开关

stp region-configuration
 region-name ***edited***
 instance 1 vlan 200 to 399 2100 to 2199
 instance 2 vlan 400 to 599 2003 to 2004 2007 2009 2200 to 2299
 instance 3 vlan 600 to 799 2300 to 2399
 instance 4 vlan 800 to 999 2400 to 2499
 instance 5 vlan 2500 to 2699
 active region-configuration
#
 stp instance 0 root secondary
 stp instance 1 to 6 root primary
 stp bpdu-protection
 stp global enable
#



 [Core-sw]dis stp region-configuration
  Oper Configuration
    Format selector      : 0
    Region name          : ***edited***
    Revision level       : 0
    Configuration digest : 0x950fe4b63ba3d47dc4a539d00f613bb9

    Instance  VLANs Mapped
    0         1 to 199, 1000 to 2002, 2005 to 2006, 2008, 2010 to 2099,
              2700 to 4094
    1         200 to 399, 2100 to 2199
    2         400 to 599, 2003 to 2004, 2007, 2009, 2200 to 2299
    3         600 to 799, 2300 to 2399
    4         800 to 999, 2400 to 2499
    5         2500 to 2699

访问开关

实例 0 未映射到任何 vlan。它的唯一用途是与运行 RSTP 的旧基础设施交换机的互操作性。

 stp region-configuration
 region-name ***edited***
 instance 1 vlan 200 to 399 2100 to 2199
 instance 2 vlan 400 to 599 2003 to 2004 2007 2009 2200 to 2299
 instance 3 vlan 600 to 799 2300 to 2399
 instance 4 vlan 800 to 999 2400 to 2499
 instance 5 vlan 2500 to 2599
 active region-configuration
#
 stp global enable



  [Acc-sw]dis stp region-configuration
 Oper Configuration
   Format selector      : 0
   Region name          : ***edited***
   Revision level       : 0
   Configuration digest : 0xfe4856d79d2dad1ea4a696c8592b5a63

   Instance  VLANs Mapped
   0         1 to 199, 1000 to 2002, 2005 to 2006, 2008, 2010 to 2099,
             2600 to 4094
   1         200 to 399, 2100 to 2199
   2         400 to 599, 2003 to 2004, 2007, 2009, 2200 to 2299
   3         600 to 799, 2300 to 2399
   4         800 to 999, 2400 to 2499
   5         2500 to 2599

但是,在接入交换机上,我可以看到,除了实例 0,其他实例没有获得正确的根桥:

访问开关

 [Acc-sw]dis stp root
  MST ID   Root Bridge ID        ExtPathCost IntPathCost Root Port
  0        0.0011-85ce-9a00      33          0           BAGG1
  1        32768.40b9-3ca6-0b7f  0           0
  2        32768.40b9-3ca6-0b7f  0           0
  3        32768.40b9-3ca6-0b7f  0           0
  4        32768.40b9-3ca6-0b7f  0           0
  5        32768.40b9-3ca6-0b7f  0           0

查看 bpdu-statistics,它表明 CORE 和 ACCESS 之间几乎没有交换 BPDU:

核心开关

   Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Invalid BPDUs               0
  Looped-back BPDUs           0
  Max-aged BPDUs              0
  TCN sent                    0
  TCN received                0
  TCA sent                    33306      17:06:33 09/14/2017
  TCA received                0
  Config sent                 0
  Config received             0
  RST sent                    0
  RST received                0
  MST sent                    1261144    17:06:49 09/14/2017
  MST received                33310      17:06:31 09/14/2017

  Instance 0:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          01:02:43 01/01/2011
  TC sent                     204        15:18:57 09/14/2017
  TC received                 33307      17:06:31 09/14/2017

  Instance 1:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          01:02:43 01/01/2011
  TC sent                     186        15:18:57 09/14/2017
  TC received                 0

  Instance 2:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          01:02:43 01/01/2011
  TC sent                     186        15:18:57 09/14/2017
  TC received                 0

  Instance 3:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          01:02:43 01/01/2011
  TC sent                     186        15:18:57 09/14/2017
  TC received                 0

  Instance 4:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          01:02:43 01/01/2011
  TC sent                     204        15:18:57 09/14/2017
  TC received                 0

  Instance 5:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          01:02:43 01/01/2011
  TC sent                     186        15:18:57 09/14/2017
  TC received                 0

访问开关

  --------------------------- ---------- -----------------
  Invalid BPDUs               0
  Looped-back BPDUs           0
  Max-aged BPDUs              0
  TCN sent                    0
  TCN received                0
  TCA sent                    0
  TCA received                176        17:12:21 09/14/2017
  Config sent                 0
  Config received             0
  RST sent                    0
  RST received                0
  MST sent                    178        17:12:19 09/14/2017
  MST received                6600       17:12:51 09/14/2017

  Instance 0:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          13:32:59 09/14/2017
  TC sent                     176        17:12:19 09/14/2017
  TC received                 24         15:18:57 09/14/2017

  Instance 1:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          13:32:59 09/14/2017
  TC sent                     1          13:32:59 09/14/2017
  TC received                 0

  Instance 2:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          13:32:59 09/14/2017
  TC sent                     1          13:32:59 09/14/2017
  TC received                 0

  Instance 3:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          13:32:59 09/14/2017
  TC sent                     1          13:32:59 09/14/2017
  TC received                 0

  Instance 4:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          13:32:59 09/14/2017
  TC sent                     1          13:32:59 09/14/2017
  TC received                 0

  Instance 5:
  Type                        Count      Last Updated
  --------------------------- ---------- -----------------
  Timeout BPDUs               0
  Max-hoped BPDUs             0
  TC detected                 1          13:32:59 09/14/2017
  TC sent                     1          13:32:59 09/14/2017
  TC received                 0

我可以清楚地看到,只有实例 0 正确地交换了 BPDU。这是为什么 ?实例 0 的根网桥运行 RSTP 是否优先于我的核心交换机上配置的 MST?

谢谢您的回答。

4个回答

您的配置存在一个基本问题,即核心交换机和接入交换机上的配置摘要不匹配。

 [Core-sw]dis stp region-configuration
  Oper Configuration
    Format selector      : 0
    Region name          : ***edited***
    Revision level       : 0
    Configuration digest : 0x950fe4b63ba3d47dc4a539d00f613bb9

  [Acc-sw]dis stp region-configuration
 Oper Configuration
   Format selector      : 0
   Region name          : ***edited***
   Revision level       : 0
   Configuration digest : 0xfe4856d79d2dad1ea4a696c8592b5a63

由于摘要不匹配,您有两个同名的区域,而不是一个区域。RSTP 规则适用于区域之间,因此出于实际目的,就好像您还没有配置 MSTP。

我发现的唯一差异是映射到实例 5 的 VLAN 不同。尽管如此,使用加密校验和,未命中与一英里一样好。

特尔;博士:

  • MST (IEEE 802.1s)在实例 0 上交换 BPDU 。不要期待其他实例上的 BPDU。
  • 所有 MST 交换机(参考:richardb 的回答)上的 VLAN 到实例映射必须相同,拓扑才能收敛。

扩大的视野:

对于 MST (802.1s),只有实例 0 用于交换 BPDU。我能找到的关于 MST 的最好的文章之一是这个:

http://blog.ine.com/2010/02/22/understanding-mstp/,“MISTP与 MSTP”部分

报价和亮点:

IEEE 802.1s 实现不会为每个活动的 STP 实例单独发送 BDPU,也不会封装 VLAN 编号列表配置消息。相反,一个称为内部生成树(IST aka MSTI0,多生成树实例 0)的特殊 STP 实例编号 0 被指定为承载所有 STP 相关信息。IST 的 BPDU 包含 IST 本身的所有标准 RSTP 样式信息,并携带附加信息字段这些字段包括配置名称、修订号和通过 VLAN 计算到 MSTI 映射表内容的哈希值。通过比较从对等方接收到的散列值与本地值,仅使用这种压缩信息交换机可以检测 VLAN 映射中的错误配置。

至于 (R)STP 与 MST 的互操作,http://blog.ine.com/2008/09/24/mstp-tutorial-part-ii-outside-a-region/告诉我们(“CST 的概念和STP互操作)

这也是 MSTP 与传统 IEEE STP/RSTP 区域互操作的地方。传统交换机区域没有 IST 的概念,因此它们只是将其 STP 实例与 CST 连接起来,并将 MSTP 区域视为“透明”伪网桥,不知道它们的内部拓扑。(请注意,可能会发生BID 最低的交换机属于 RSTP/STP 区域。这种情况导致所有 MSTP 区域都选择本地 CIST 区域根并考虑位于 MSTP“域”之外的新 CIST 根)。自然地,MSTP 在边界链路上检测适当的 STP 版本并切换到相应的操作模式(例如 RSTP/STP)。

因此,在 MST 区域之外拥有 MST 实例 0 的根可能会导致一些意外的输出和拓扑/树(例如 0),但一切都应该仍然有效。

但是,根据您的配置,它可能不会。请按照richardb的建议理清core和access之间的VLAN到实例的映射关系。他的说法(“因此,出于实际目的,就好像您还没有配置 MSTP”)很容易地解释了为什么接入交换机认为自己是 MST 实例 1-5 的根;它不会接受来自核心的 BPDU,因为哈希值不匹配。

这可能是与生成树模式相关的问题。

在 RSTP、MSTP 和 PVST 中,每种模式都具有一定的 STP 兼容性,对于接收 STP BPDU 的端口具有回退到 STP 的机制。

MSTP模式的端口如果收到STP BPDU,会自动转为STP模式,但在收到RSTP BPDU时不会转为RSTP模式。

这可以解释为什么您的配置仅适用于 VLAN 1,因为不能排除回退到 STP。
检查 HP5490 和 HP5130 的中继端口的 STP 模式是否为 MSTP。

将配置擦干净并重新开始。使用 HP 所谓的中继组将上行链路绑定到单个链路中。在核心交换机上进行 vlan 间路由。