![如何通过一个端口连接两台启用了 STP 的交换机,且不阻塞端口](https://linux22.com/image/791601/%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%E4%B8%80%E4%B8%AA%E7%AB%AF%E5%8F%A3%E8%BF%9E%E6%8E%A5%E4%B8%A4%E5%8F%B0%E5%90%AF%E7%94%A8%E4%BA%86%20STP%20%E7%9A%84%E4%BA%A4%E6%8D%A2%E6%9C%BA%EF%BC%8C%E4%B8%94%E4%B8%8D%E9%98%BB%E5%A1%9E%E7%AB%AF%E5%8F%A3.png)
我有一个问题,如果我想连接两个板,并且每个板都有内部交换机(如下图所示),您知道,一般来说,交换机可能会启用 STP(生成树协议)以避免广播风暴,但是,如果在所有端口上都启用了 STP,这是否意味着我无法同时通过所有 10 个端口将数据包从 NIC1 发送到 NIC2,或者只有一个端口可用,其他端口将被 STP 功能阻止。但是,如果我禁用 STP,那么就会出现广播风暴,我的理解正确吗?
如果它是正确的,我想知道,当所有端口仍然启用 STP 时,是否有其他方法可以让所有连接可用。
==============================================
更新:
感谢@vidarlo 和@jbgeek,现在我明白使用链路聚合组(LAG)将所有端口绑定为虚拟端口,因此它可以忽略连接的 STP 功能。
但是除了 LAG 之外,例如在下面的屏幕截图中,端口 2~8 配置了 VLAN20,因此当我将端口 2~8 连接到另一台交换机时,我预计会出现连接阻塞,并且我想知道,如果我为每个端口配置不同的 VLAN,即端口 2 配置为 VLAN30,端口 3 配置为 VLAN40……等等,然后将这些端口连接到另一台交换机,是否可以避免 STP 阻塞,从而让所有端口可用?
谢谢,Jacky
答案1
如果启用了 STP,并且每个端口都在同一个 vLAN 上,则连接两个交换机的除一条链路之外的所有链路都将被禁用,以防止转发环路。
如果该端口失去链接,则将启用另一对(如果目的是高冗余)。
如果您的目的是什么,那么可以使用各种协议将多个链接捆绑在一起形成一个虚拟的单链接,以获得更大的带宽。
这篇 wiki 文章对链接聚合机制进行了很好的概述: https://en.wikipedia.org/wiki/Link_aggregation