好的,我已经阅读了有关特定交换机上 MAC 地址表(或者更广为人知的 CAM 表)的 16K 限制的信息。假设我有 14 个具有 16K 限制的不同边缘交换机,并且我在所有这些相同的交换机上设置了 VLAN 200,我是否希望看到该 VLAN 的所有交换机上的表“同步”?例如,如果一台交换机填满了 10K mac 地址,我是否希望在该 VLAN 中的所有交换机的 CAM 表中看到这些相同的 MAC 地址?这可能因配置和/或供应商实施而异吗?
交换机 MAC 地址表是否在同一 VLAN 中的所有交换机之间同步?
跨交换机同步 MAC 地址表没有任何意义。每个交换机维护自己的 MAC 地址表。
例如,假设您将交换机 1 和交换机 2 的端口 24 连接在一起,并且 MAC 地址0123.4567.89ab
进入交换机 1 的端口 5。在交换机 1 上,MAC 地址表将反映 MAC 地址0123.4567.89ab
连接到端口 5。如果有任何帧从具有该 MAC 地址的主机找到通往交换机 2 的路,交换机 2 的 MAC 地址表将有 MAC 地址0123.4567.89ab
进入端口 24。如果没有来自 MAC 地址的帧0123.4567.89ab
被发送到交换机 2,那么交换机 2 将不会0123.4567.89ab
在其MAC地址表。
如果您在这两台交换机之间同步 MAC 地址表,那么您将如何解决在0123.4567.89ab
一台交换机的端口 5 上但在另一台交换机的端口 24 上的端口冲突?
您可能拥有的最接近的东西是交换机堆栈,其中多个交换机连接在一个堆栈中,并且堆栈看起来像一个单独的交换机。您配置堆栈,而不是单个交换机,并且 STP 和 MAC 地址表之类的操作就像堆栈是单个交换机一样完成。
交换机通常不会1同步 MAC 表,它们根据源 MAC 地址和它们看到的帧的入口端口独立构建它们。
然而,几乎所有设备都首先发送广播(或有效广播)数据包(DHCP、ARP 等)。当从 MAC 地址发送广播数据包时,该数据包将被 VLAN 中的每个交换机处理,因此它的 MAC 地址将被 VLAN 中的每个交换机记录。
因此,在正常情况下,您会期望 VLAN 上的所有交换机在其交换表中为该 VLAN 提供几乎相同的 MAC 地址列表。显然,与这些 MAC 地址关联的端口会有所不同。
1对此也有例外,一些虚拟以太网协议会明确通告 MAC 地址的位置。https://datatracker.ietf.org/doc/html/draft-ietf-bess-evpn-overlay-04