思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

假设STP处于收敛状态。 如果我使用电缆将交换机 H 直接连接到根交换机 A 会发生什么情况? 根网桥“发现”它有一个新的启用端口并通过它发送 BPDU。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

交换机 H 以零成本收到此帧后,将确定通过新端口的路由成本为 0 + 19 = 19,尽管其根端口的成本为 76。此后,交换机 H 的端口之前处于禁用状态的 ,将经历所有过渡阶段,并仅在 50 秒后切换到传输模式。 如果其他设备连接到该交换机,那么所有设备都将在 50 秒内失去与根交换机和整个网络的连接。

交换机 G 也做同样的事情,收到来自交换机 H 的 BPDU 帧,其中的成本通知为 19。它将其分配端口的成本更改为 19+19= 38,并将其重新分配为新的根端口,因为其先前的根端口的成本端口是57,大于38。同时,持续50秒的端口重定向的各个阶段又重新开始,最终导致整个网络崩溃。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

现在让我们看看使用 RSTP 时在类似情况下会发生什么。 根交换机将以同样的方式向与其连接的 H 交换机发送 BPDU,但随后它会立即阻塞其端口。 交换机H收到该帧后,会判断该路由的开销低于其根端口,并立即阻塞该路由。 之后,H将向根交换机发送一个Proposal,请求打开一个新端口,因为它的成本小于已经存在的根端口的成本。 根交换机同意请求后,解除其端口的阻塞,并将协议发送给交换机 H,之后交换机 H 将新端口设为根端口。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

同时,得益于提议/协议机制,根端口的重新分配几乎会立即发生,并且连接到交换机H的所有设备都不会失去与网络的连接。
通过分配新的根端口,交换机 H 会将旧的根端口变成备用端口。 交换机 G 也会发生同样的情况 - 它将与交换机 H 交换提议/协议消息,分配新的根端口并阻止其他端口。 然后,该过程将在下一个网段与交换机 F 继续进行。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

交换机F在分析成本后会发现,通过下端口到根交换机的路由成本为57,而通过上端口的现有路由成本为38,因此一切保持不变。 交换机G获悉这一情况后,将阻塞面向F的端口,并沿着新的GHA路由将流量转发到根交换机。

在交换机 F 收到交换机 G 的提案/协议之前,它将保持其底部端口处于阻塞状态以防止环路。 因此,您可以看到 RSTP 是一种非常快的协议,不会产生 STP 在网络上出现的问题。
现在让我们继续讨论命令。 需要进入交换机全局配置模式,使用spanning-tree mode命令选择PVST或RPVST模式。 然后您需要决定如何更改特定 VLAN 的优先级。 为此,请使用 spanning-tree vlan <VLAN 编号> 优先级 <值> 命令。 从上一个视频教程中,您应该记住优先级是 4096 的倍数,默认情况下该数字是 32768 加上 VLAN 编号。 如果您选择了 VLAN1,则默认优先级将为 32768+1= 32769。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

为什么您可能需要更改网络的优先级? 我们知道BID由数字优先级值和MAC地址组成。 设备的MAC地址无法更改,它具有恒定值,因此只能更改优先级值。

我们假设有一个大型网络,其中所有 Cisco 设备都以循环模式连接。 此时PVST默认处于激活状态,因此系统将选择根交换机。 如果所有设备具有相同的优先级,则具有最旧 MAC 地址的交换机将优先。 然而,它可能是一个已有 10-12 年历史的传统交换机,甚至不具备“领导”如此庞大网络的能力和性能。
与此同时,您的网络中可能有一台价值数千美元的最新交换机,由于 MAC 地址值较高,它被迫“屈服”到价值几百美元的旧交换机。 如果旧交换机成为根交换机,则表明网络设计存在严重错误。

因此,您必须进入新交换机的设置并为其分配一个最小优先级值,例如0。当使用VLAN1时,总优先级值为0 + 1 = 1,所有其他设备将始终将其视为根交换机。

现在想象一下这样的情况。 如果根交换机由于某种原因变得不可用,您可能希望新的根交换机不仅仅是任何低优先级交换机,而是具有更好网络功能的特定交换机。 在这种情况下,根桥设置使用分配主根交换机和辅助根交换机的命令:spanning-tree vlan <VLAN 网络号> root <主/辅助>。 主交换机的优先级值为 32768 - 4096 - 4096 = 24576。对于辅助交换机,其计算公式为 32768 - 4096 = 28672。

您无需手动输入这些数字 - 系统会自动为您完成此操作。 因此,优先级为 24576 的交换机将成为根交换机,如果不可用,则优先级为 28672 的交换机,而默认情况下所有其他交换机的优先级至少为 32768。如果您不希望系统出现这种情况,则应这样做自动分配根交换机。

如果要查看 STP 协议设置,必须使用 show spanning-treesummary 命令。 现在让我们使用 Packet Tracer 来看看今天涵盖的所有主题。 我使用的是4台交换机型号2690的网络拓扑,这并不重要,因为所有型号的Cisco交换机都支持STP。 它们相互联系,使网络形成恶性循环。

默认情况下,Cisco 设备以 PSTV+ 模式运行,这意味着每个端口的收敛时间不会超过 20 秒。 模拟面板允许您描述流量的发送并查看所创建网络的参数。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

您可以看到什么是 STP BPDU 帧。 如果你看到版本0,那么你有STP,因为版本2用于RSTP。它还显示Root ID值,它由根交换机的优先级和MAC地址组成,以及与之相等的Bridge ID值。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

这些值是相等的,因为SW0到根交换机的路由成本为0,因此,它是根交换机本身。 因此,在打开交换机后,由于使用了STP,根桥被自动选择并且网络开始工作。 可以看到,为了防止环路,交换机SW0的上端口Fa2/2被设置为Blocking状态,但标记的橙色表示的是什么。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

让我们转到 SW0 交换机设置控制台并使用几个命令。 第一个是 show spanning-tree 命令,输入该命令后,我们将在屏幕上显示有关 VLAN1 的 PSTV + 模式的信息。 如果我们使用多个 VLAN,窗口底部将出现第二个及后续使用的网络的另一个信息块。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

可以看到IEEE标准下可以使用STP协议,这意味着使用PVSTP+。 从技术上讲,这不是 .1d 标准。 它还显示Root ID信息:优先级32769、根设备的MAC地址、成本19等。 接下来是网桥 ID 信息,该信息对优先级值 32768 +1 进行解码,然后是另一个 MAC 地址。 正如你所看到的,我错了 - SW0 交换机不是根交换机,根交换机在根 ID 参数中给出了不同的 MAC 地址。 我认为这是因为 SW0 收到了一个 BPDU 帧,其中包含网络上某些交换机有充分理由扮演根角色的信息。 现在我们将考虑这一点。

(译者注:Root ID是根交换机的标识符,对于运行在STP协议下的同一VLAN的所有设备来说都是相同的,Bridge ID是本地交换机作为根桥的一部分的标识符,对于不同的设备可以不同不同的交换机和不同的 VLAN)。

另一种表明SW0不是根交换机的情况是根交换机没有根端口,此时同时存在处于转发状态的根端口和指定端口。 您还可以看到连接类型 p2p 或点对点。 这意味着端口 fa0/1 和 fa0/2 直接连接到相邻交换机。
如果某个端口连接到集线器,连接类型将被指定为共享,我们稍后会讨论这一点。 如果我输入 show spanning-treesummary 命令来查看摘要信息,我们将看到该交换机处于 PVSTP 模式,后面会列出不可用的端口功能。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

下图显示了服务VLAN1的端口状态和数量:阻塞0、监听0、学习0,有2个端口处于STP模式的转发状态。
在继续讨论开关 SW2 之前,我们先看一下开关 SW1 的设置。 为此,我们使用相同的 show spanning-tree 命令。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

您可以看到交换机 SW1 的根 ID 的 MAC 地址与 SW0 的 MAC 地址相同,因为网络上的所有设备在汇聚时都会收到相同的根桥设备地址,因为它们信任 STP 所做的选择协议。 如您所见,SW1 是根交换机,因为 Root ID 和 Bridge ID 地址相同。 此外,还有一条消息“此交换机是 root”。

根交换机的另一个标志是它没有根端口,两个端口都被指定为指定端口。 如果所有端口都显示为 Designated 并且处于转发状态,则您有根交换机。

交换机 SW3 包含类似的信息,现在我切换到 SW2,因为它的一个端口处于阻塞状态。 我使用 show spanning-tree 命令,我们看到根 ID 信息和优先级值与其余交换机相同。
进一步指出其中一个端口是替代端口。 不要混淆,802.1d 标准将其称为阻塞端口,而在 PVSTP 中,阻塞端口始终称为替代端口。 因此,该备用 Fa0/2 端口处于阻塞状态,而 Fa0/1 端口充当根端口。

被阻塞的端口位于交换机SW0和交换机SW2之间的网段,因此我们不会形成环路。 如您所见,交换机使用 p2p 连接,因为没有其他设备连接到它们。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

我们有一个通过 STP 协议汇聚的网络。 现在我将拿电缆将开关SW2直接连接到马开关SW1。 之后,所有 SW2 端口都将用橙色标记表示。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

如果我们使用show spanning-treesummary命令,我们会看到两个端口一开始处于Listening状态,然后进入Learning状态,几秒钟后进入Forwarding状态,同时标记颜色变为绿色的。 如果您现在发出 show spanning-tree 命令,您可以看到曾经是根端口的 Fa0/1 现在已进入阻塞状态,并被称为替代端口。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

根交换机电缆所连接的 Fa0/3 端口已成为根端口,Fa0/2 端口已成为指定指定端口。 让我们再看一下正在进行的融合过程。 我将断开 SW2-SW1 电缆并返回到之前的拓扑。 您可以看到 SW2 端口首先阻塞并再次变为橙色,然后依次经历侦听和学习状态并最终进入转发状态。 在这种情况下,一个端口变为绿色,连接到 SW0 交换机的第二个端口保持橙色。 收敛过程花费了相当长的时间,这就是STP工作的成本。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

现在让我们看看RSTP是如何工作的。 让我们从 SW2 交换机开始,并在其设置中输入生成树模式 rapid-pvst 命令。 该命令只有两个参数选项:pvst和rapid-pvst,我使用第二个。 输入命令后,交换机切换到 RPVST 模式,您可以使用 show spanning-tree 命令检查这一点。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

一开始,您会看到一条消息,指出我们现在可以使用 RSTP 协议。 其他一切都保持不变。 然后我必须对所有其他设备执行相同的操作,这样就完成了 RSTP 设置。 让我们看看这个协议如何像 STP 那样工作。

我再次将交换机 SW2 直接连接到根交换机 SW1 - 让我们看看收敛速度有多快。 我输入 show spanning-treesummary 命令,看到两个交换机端口处于 Blocking 状态,1 个端口处于 Forwarding 状态。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

您可以看到收敛几乎是立即发生的,因此您可以看到 RSTP 比 STP 快多少。 接下来,我们可以使用spanning-tree portfast default命令,该命令会将交换机上的所有端口默认设置为portfast模式。 如果大多数交换机端口是直接连接到主机的边缘端口,则这是相关的。 如果我们有一些非边缘端口,我们将其设置回生成树模式。

要配置 VLAN 工作,您可以使用带有优先级参数(设置生成树的交换机优先级)或 root(将交换机设置为根)的 spanning-tree vlan <number> 命令。 我们使用spanning-tree vlan 1priority命令,指定4096到0范围内61440的任意倍数作为优先级,这样就可以手动更改任意VLAN的优先级。

您可以发出带主要或次要选项的 spanning-tree vlan 1 root 命令来配置特定网络的主要或备份根端口。 如果我使用生成树 vlan 1 root 主端口,则该端口将成为 VLAN1 的主根端口。

我输入show spanning-tree命令,我们会看到这台交换机SW2的优先级为24577,Root ID和Bridge ID的MAC地址相同,这意味着现在它已经成为根交换机。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

您可以看到融合和角色切换发生的速度有多快。 现在我将使用no spanning-tree vlan 1 root Primary命令取消主交换机模式,之后其优先级将恢复到之前的值32769,根交换机的角色将再次转到SW1。

让我们看看 portfast 是如何工作的。 我将输入命令int f0 / 1,进入该端口的设置并使用spanning-tree命令,之后系统将提示参数值。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

接下来,我使用 spanning-tree portfast 命令,可以使用选项“disable”(为此端口禁用 portfast)或“trunk”(为此端口启用 portfast,即使在中继模式下)输入该命令。

如果您输入 spanning-tree portfast,则该功能将简单地在此端口上打开。 必须使用spanning-tree bpduguard enable命令来启用BPDU Guard功能,使用spanning-tree bpduguard disable命令禁用该功能。

我很快就会告诉你一件事。 如果对于 VLAN1,交换机 SW2 的 SW3 方向的接口被阻止,则通过其他 VLAN(例如 VLAN2)的其他设置,同一接口可以成为根端口。 这样,系统就可以实现流量负载均衡机制——在一种情况下,该网段不被使用,在另一种情况下,它被使用。

我将展示当我们连接集线器时拥有共享接口时会发生什么。 我将在图中添加一个集线器,并用两根电缆将其连接到 SW2 交换机。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

show spanning-tree 命令将显示下图。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

Fa0/5(交换机左下端口)成为备份端口,端口Fa0/4(交换机右下端口)成为分配的指定端口。 两个端口的类型是通用的或共享的。 这意味着集线器交换机接口段是共享网络。

由于使用了 RSTP,我们可以将端口分为备用端口和备用端口。 如果我们使用spanning-tree mode pvst命令将SW2交换机切换到pvst模式,我们将看到Fa0/5接口再次切换到Alternative状态,因为现在备份端口和替代端口之间没有区别。

思科培训 200-125 CCNA v3.0。 第 37 天 STP:根桥选择、PortFast 和 BPDU 保护功能。 第2部分

这是一堂很长的课,如果你有不明白的地方,我建议你再复习一遍。


感谢您与我们在一起。 你喜欢我们的文章吗? 想看更多有趣的内容? 通过下订单或推荐给朋友来支持我们, 在我们为您发明的独特的入门级服务器模拟上,Habr 用户可享受 30% 的折扣: VPS (KVM) E5-2650 v4(6 核)10​​4GB DDR240 1GB SSD 20Gbps XNUMX 美元或如何共享服务器的全部真相? (适用于 RAID1 和 RAID10,最多 24 个内核和最多 40GB DDR4)。

戴尔R730xd便宜2倍? 只有这里 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 电视低至 199 美元 在荷兰! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - 99 美元起! 阅读 如何建设基础设施公司同级使用价值730欧元的Dell R5xd E2650-4 v9000服务器一分钱?

来源: habr.com

添加评论