:vlan 1050(192.168.50.0)的生成树根是 Core2
:vlan 1020(192.168.20.0)的生成树根是 Core1
我试图为我的网络添加一些冗余,并添加了从交换机 1 -> 交换机 2 和交换机 2 -> 交换机 3 的链接。我通过使用 SPAN 和数据包嗅探器注意到,源自 192.168.50.0/24 网络并前往 192.168.20.0/24 网络的流量既穿过中继到 Core2,又穿过中继到交换机 2,即使到交换机 2 的链接处于 BLKing 状态。当我关闭交换机 1 和交换机 2 之间的接口时,我注意到流量会从交换机 1 流出进入 Core2,然后从 Core2 -> 交换机 3 -> 交换机 2 流出,然后返回 Core2。(即使从交换机 3 到交换机 2 的链接处于 BLKing 状态。流量最终会到达 Core1 并被传送,但我感到很困惑。
我认为当接口处于阻塞状态时,它不会传输任何流量???此外,为什么这些流量会到达 switch2 或 switch3,而它们到 core2 的路径要好得多?
答案1
关于生成树,有几件事可能有助于消除您的一些困惑:
- 根桥上的所有端口必须始终处于转发模式。
- 链路不会被阻塞,端口会被阻塞。被阻塞的链路的一端端口处于阻塞模式,但另一端仍可发送流量。
因此,在第一种情况下,数据包从应该被阻止的链路发出。之所以发生泛洪,是因为任何端口都未获知目标 MAC,但它会从每个转发端口泛洪出去;在小型交换机上,不确定哪一端会阻止,但将泛洪帧从另一端被阻止的链路转发出去是意料之中且正常的。如果您明确哪个交换机正在转发流量,以及帧的目的地应该在哪里(什么在进行路由?),那么我应该能够进一步澄清。
在第二种情况下,除了将流量发送回核心 2 之外,整个过程都是可行的。如果交换机 2 在其到交换机 3 的链路上阻塞,那么泛洪帧将以完全相同的方式遍历网络 - 除了交换机 2 会直接从核心获取其副本,而从交换机 3 进入的副本将被丢弃。
请随时提出任何需要澄清的问题,或者让我知道我是否有任何错误的假设——如果您更新图表以显示每个 vlan 上哪些端口处于阻塞状态,并澄清预期和观察到的流量来源和目的地,这可能会很有用。