我们的 Catalyst 6500 交换机出现问题,我们怀疑 ARP 缓存已损坏。这会出现以下症状:
当您尝试 ping 一个以前未解决的系统时,第一个 ping 响应超时,并且每个处理都成功: Ping foo.network.com [xxx.xx.xx.xx] with 32 bytes of data: Request timed出去。来自 xxx.xx.xx.xx 的回复:bytes=32 time=5ms TTL=55 来自 xxx.xx.xx.xx 的回复:bytes=32 time=3ms TTL=55 来自 xxx.xx.xx.xx 的回复:bytes= 32 时间=3ms TTL=55
发生损坏问题时,每隔一次 ping 超时: Pinging foo.network.com [xxx.xx.xx.xx] with 32 bytes of data: Reply from xxx.xx.xx.xx: bytes=32 time=5ms TTL =55 请求超时。来自 xxx.xx.xx.xx 的回复:bytes=32 time=5ms TTL=55 请求超时。
清除 ARP 缓存可暂时解决此问题。要清除 ARP 缓存,我们使用以下命令: clear arp cache clear ip cache 这修复了它,但它肯定会再次发生。
开关细节:
IOS (tm) s72033_rp 软件 (s72033_rp-PK9SV-M),版本 12.2(17d)SXB8,发布软件 (fc2)
cisco WS-C6509-E (R7000) 处理器(1.1 版)
任何帮助表示赞赏,谢谢
澄清:我们拥有自己管理的网络,然后接入企业网络。对我们管理的网络内机器的所有请求都可以正常工作。我们只是在其他网络上的机器上遇到问题。
我建议你向思科开一个案子。
他们将能够检查您的 IOS 版本上的已知错误,并会询问您可能不想在此处发布的配置详细信息。(但如果你愿意,你可以将 sh 技术的结果放在可以帮助我们的地方)它是否会
在重新启动后附加,还是在长时间正常运行后开始损坏?
您是否从交换机的 CLI 或连接到交换机的 PC 中看到了 PING 问题?
该交换机是否提供第 3 层(路由)功能?
这些 PING 是否显示在同一子网或跨子网的两个设备之间存在问题?
交换机上的日志(我相信“显示日志历史记录”)是否显示出任何问题?
问题是否仅影响到几个设备的数据包传输,或者您是否看到它影响了多个设备?
几年前,我在客户网站上遇到过类似的问题。我在问题发生之前捕获了“show mac-”的输出,然后在问题发生期间捕获了输出,并比较了在中断开始之前和之后寻找似乎位于不同端口上的设备。
我发现 LAN 上有一个嵌入式设备(在这种情况下是时钟),它会定期发送一批带有“欺骗”源地址的帧,混淆交换机的桥接表并导致交换机发送错误的帧港口一段时间。通过注意到不应该更改端口的设备似乎正在这样做,我能够在“show mac-”输出中看到它。
故障排除听起来很有趣!希望我在那里...>微笑<
编辑:
感谢您的评论。
“show log hist”显示一个持久日志。只要您不清除日志,在您清除交换机上的 arp 缓存后,任何报告的消息都会在那里。
在您的 6509 和问题设备所在的公司数据中心之间是否还有其他路由器?
您是否使用任何动态路由协议?
我的直觉是这样说的:
我强烈建议您在发生故障之前保存“show mac-”和“show arp”的副本,并在发生故障时再次保存(使用 PuTTY 之类的东西只需要一点时间来捕获它们,所以您可以继续快速清除 arp 缓存)。
我意识到你不能轻易地在这里发布这些捕获,但我建议你将它们放入电子表格或数据库中,并在一份报告中将 MAC 地址与端口进行匹配,并将 MAC 地址与另一份报告中的 IP 地址进行匹配。如果您比较“之前”和“期间”,我预测您会看到一些差异。
假设你的 6509 和公司数据中心之间有一个路由器,我预测你会发现路由器的 MAC 地址在端口之间“移动”,或者它的 IP 地址在 MAC 地址之间移动。
如果没有路由器并且公司数据中心机器在第 2 层与这个 6509 通信,我预测设备本身可能会在端口之间显示一些“移动”,或者在 MAC 地址之间移动 IP 地址。
如果您在被 ping 的客户端上运行嗅探器,您会看到所有的 ping 还是只看到其中的一半?
如果您从 6500 上的不同接口获取 ping,会发生什么情况?6500 作为默认网关的主机是否会发生这种情况?
mac地址表是什么样子的?跟踪路由怎么样?还有一个'ping -r9'?
不排除 IOS 错误,但也可能是很多其他问题......
这可能是 ARP 欺骗的情况。如果有人试图欺骗包括网关在内的网络上的所有地址,则欺骗机器将获得过多的流量,因此在读取数据后可能无法将所有数据传输到正确的地址。或者欺骗机器可以故意丢弃额外的数据包。
运行wireshark。然后使用“arp -d”删除子网上所有IP地址的arp条目。然后尝试在您的子网上 ping 几个 IP。然后停止从wireshark捕获数据包,只分析ARP流量。如果您看到您 ping 的每个 IP 有多个 ARP 响应,例如 IP 172.16.1.1 位于 xx:xx:xx:xx:xx:xx0 后跟 IP 地址 172.16.1,1 位于 yy:yy:yy:yy:yy:年。那么肯定是ARP欺骗的情况,交换机没有问题。
万一这不起作用。尝试将交换机 IOS 升级到最新版本。
我必须同意彼得和埃文的观点。这听起来更像是弹跳路由/端口,而不是缓存攻击。特别是在 65xx 上。为了放大 Evan 的评论,请务必获取(工作)arp 表,但您真正需要的唯一条目是下一跳路由器。您是否排除了多路径问题?我看到有人问您是否正在运行动态路由协议(或具有浮动静态路由的多个网关),但我没有看到您的答案。祝你好运!