我们有几百台接入交换机连接到 IRF 中的核心 10k。在这里,我们所有的访问都非常愚蠢,只做 L2 工作。所以现在发生的是单播泛洪,从技术上讲,MAC 老化了,至少我相信它。我同意减少故障域大小的一件事,但顺便说一句,我想知道 10K 中是否有免费的 arp 学习可以帮助我们减少或消除这种泛滥。因为当您启用它时,交换机可以执行单播 GARP 以通过防止老化将 mac 保持在表中,从而帮助我们停止泛滥?
在给定时间,我的核心 arp 表大小为 14k,mac 表大小约为 10k。
我们有几百台接入交换机连接到 IRF 中的核心 10k。在这里,我们所有的访问都非常愚蠢,只做 L2 工作。所以现在发生的是单播泛洪,从技术上讲,MAC 老化了,至少我相信它。我同意减少故障域大小的一件事,但顺便说一句,我想知道 10K 中是否有免费的 arp 学习可以帮助我们减少或消除这种泛滥。因为当您启用它时,交换机可以执行单播 GARP 以通过防止老化将 mac 保持在表中,从而帮助我们停止泛滥?
在给定时间,我的核心 arp 表大小为 14k,mac 表大小约为 10k。
当流量以某种可预测的模式流动时,不应发生单播泛洪。
交换机通过通过它们运行的帧的源地址来学习 MAC 端口关联。当在 MAC 老化期间没有来自某个 MAC 地址的流量时,表条目将被删除。该 MAC 的下一帧被洪泛到所有端口,模拟中继器集线器。
为了避免活动 MAC 老化,您需要提高 MAC 使用期限,以便在该期限内有来自每个源地址的流量,或者您确保每个活动源 MAC 确实在该期限内发送流量,例如发送将更新广播域中的所有交换机。
除非您运行一些微妙的 L2 负载平衡、非常高的边缘波动或类似情况,否则将 MAC 老化时间提高到一个或多个小时通常不会有什么坏处。
第 2 层交换机使用 MAC 地址表而不是 ARP 表来确定哪些 MAC 地址最后出现在哪些交换机接口上。ARP将三层地址解析为二层地址,二层交换机只关心其管理接口上的地址,不关心交换。
第 2 层交换机将使用每次帧进入交换机时看到 MAC 地址的接口更新其 MAC 地址表。交换机查看源 MAC 地址并使用该源 MAC 地址的接口更新其 MAC 地址表(该表构建速度很快,因为它只需从 MAC 地址中提取一帧即可添加/编辑 MAC 地址表条目)。
然后,交换机将查看目标地址,并在表中查找该地址以确定 MAC 地址最后在哪个接口上被视为源地址。然后交换机会将帧切换到该接口。如果目的MAC地址不在MAC地址表中,交换机会将帧洪泛到除帧进入交换机的接口之外的所有接口。
例如,Cisco Catalyst 交换机具有:
mac address-table aging-time <seconds> ! old
-或者-
mac-address-table aging-time <seconds> ! new
取决于交换机上使用的 IOS 版本。默认值为 300 秒(5 分钟),最大值为 1,000,000 秒(超过 11.5 天)。
这必须在每台交换机中进行配置,以便交换机 MAC 地址表不会超时。
ARP 由主机广播,以便从第 3 层目标 IPv4 地址解析第 2 层目标 MAC 地址。主机维护 ARP 表,并且 ARP 请求被广播到所有其他主机,因此 ARP 请求(和免费 ARP)将被广播到广播域 (VLAN) 上的所有交换机接口。根据主机操作系统,您可能可以配置 ARP 表超时,但主机配置在这里是题外话。
一些交换机可以减少未知单播泛滥,或将未知单播发送到特定接口。如果使用不正确,这可能会导致问题,因此如果您的交换机支持此功能,请务必小心。