编辑: 旋风 | 2019-10-05 |
5 分钟发生一次单播泛洪 混合 CatOS 中有 ARP 问题 在查找 CAM 表期间发生 EARL-2-EARL4LOOKUPRAMERROR 错误 Supervisor 切换之后丢失静态 CAM 条目 %ACL-5-TCAMFULL:acl engine TCAM table is full Catalyst
6500 系列交换机中 MSFC 不响应 ARP 请求时发生 Ping 问题 MAC 地址表中有多个条目 无法访问 Microsoft 负载均衡所使用的虚拟 IP 地址 相关信息 简介 本文档提供了有关如何解决 Catalyst 6500/6000 交换机上的与地址解析协议 (ARP) 或内容可寻址内 存(CAM) 表相关的问题的信息.
先决条件 要求 本文档没有任何特定的要求. 使用的组件 本文档不限于特定的软件和硬件版本. 规则 有关文档规则的详细信息,请参阅 Cisco 技术提示规则. 背景信息 Catalyst 交换机维护若干类型的表,这些表经过调整,适用于第
2 层交换或多层交换 (MLS),并且 保存在非常快速的存储器中,以便可以并行比较帧或数据包内的许多字段. ARP ―映射一个IP地址对MAC地址为了提供在第2层广播域内的IP通信.例如,主机 B 要向主 机A发送信息,但在其 ARP 缓存中没有主机 A 的MAC 地址.主机 B 生成一个广播消息发往 广播域中的所有主机,以获取与主机 A 的IP 地址关联的 MAC 地址.广播域中的所有主机都收 到ARP 请求,但只有主机 A 以其 MAC 地址作出响应. q CAM ―所有Catalyst交换机型号使用CAM表第二层交换.当帧到达交换机端口时,交换机了解 到源 MAC 地址并将其记录在 CAM 表中.表中记录所到达的端口和相应的 VLAN,并附带一个 时间戳.如果在交换机的一个端口上了解到的 MAC 地址已移至不同的端口,则为最新到达的 端口记录该 MAC 地址和时间戳.然后,删除前一个条目.如果已在表中为正确的到达端口发 现了 MAC 地址,则仅更新其时间戳. q 三重内容可编址存储器―在多层交换机中,访问控制列表(ACL)在传统路由提供,例如匹配,过 滤的所有进程或者控制特定的流量,在硬件方面实现.通过 TCAM,对表查找一次即可将数据 包对照整个访问列表进行评估.大多数交换机都有多个 TCAM,以便可以同时评估入站和出站 安全以及 Qos ACL,或将其完全与第
2 层或第
3 层转发决策并行进行. q 排除与 ARP 或CAM 相关的问题 分布式交换过程中丢失动态 MAC 地址 在分布式交换,每Distributed Feature Card (DFC)对维护每自己的CAM表负责.这意味着每个 DFC 将了解到 MAC 地址并使其老化,具体取决于该特定条目的 CAM 老化和流量匹配.使用分布式交换 的情况下,Supervisor 引擎经常会暂时收不到某个特定 MAC 地址的任何流量,因此该条目可能会 到期.当前有可用两的机制保持CAM表一致区别引擎之间,例如DFC (在线路模块的存在)和策略特 性卡(PFC) (在Supervisor模块的存在) : Flood to Fabric (FF) q MAC 通告 (MN) q 当MAC 地址条目在 PFC 上老化时,show mac-address address all 命令会显示 保留此 MAC 地址的 DFC 或PFC. 为了防止 DFC 或PFC 上的某个条目老化,即使该 MAC 地址没有流量,仍要启用 MAC 地址同步 .发出以下这些命令以启用同步: !--- This is a global configuration command and is used to enable the synchronization. Cat6K- IOS(config)#mac-address-table synchronize !--- This is a privileged EXEC command and is used to clear dynamic MAC addresses. Cat6K- IOS#clear mac-address-table dynamic mac-address-table同步命令从Cisco IOS软件版本12.2(18)SXE4是可得到和以后.启用它之后,您 有可能仍会看到在 PFC 或DFC 中并不存在的条目.但是,模块有办法从使用以太网带外信道 (EOBC) 的其他设备中获取它. 警告:?mac-address-table synchronize 命令将清除经过路由的 MAC 条目.要避免这种情况,请用 mac-address-table aging-time
0 routed-mac 全局配置命令禁止清除经过路由的 MAC. CEF 定期丢弃数据包 思科快速转发(CEF)是提供优越性能与其他交换技术比较的一种第3层IP交换技术,特别是在与动态 流量模式的网络.CEF维护数据结构呼叫前转情报基地(FIB)和邻接表.FIB 表真实反映路由表中的 信息,并用于做出转发决策.邻接表包含预先计算得出的下一跳设备的链路层报头.根据下一跳的 接口,FIB 表中的条目映射到邻接表中的条目.如果邻接表中没有填充必要信息,则设备无法执行 CEF 交换数据包. 如果 CEF 定期丢弃数据包,并且间隔为正常操作的时间,那么这很可能是因为定期清除邻接表.这 种情况是由 ARP 条目的老化造成的.在用所需的下一跳信息填充邻接表期间,不以 CEF 方式交换 数据包.当默认情况下每四小时刷新一次 ARP 条目时,将ARP 超时值配置得太小会造成 CEF 操 作中断. 在接口配置模式下发出 arp timeout 命令以更改条目在 ARP 缓存中保留的时间. 有关此漏洞的详细信息,请参阅 Cisco bug ID CSCeb53542(仅限注册用户).有关 CEF 邻接的 详细信息,请参阅排除 CEF 不完全邻接的故障. 交换机从 CAM 表中过滤全零的 MAC 地址 交换机从 CAM 表中过滤源 MAC 地址为 00-00-00-00-00-00(这是无效的源 MAC)的帧.以下是 发生这种情况时 syslog 错误输出的示例: %SYS-4-P2_WARN: 1/Filtering MAC address 00-00-00-00-00-00 on port 2/48 from host table 这些消息传达信息,告诉您找到了源 MAC 地址为 00-00-00-00-00-00 的帧,而交换机不会将其添 加到 CAM 表中.但是,交换机将会转发来自全零 MAC 地址的流量. 解决方法是找出生成源 MAC 地址为全零的帧的终端站.一般而言,以下这些设备之一会发出这样 的帧: 数据流生成器,如Spirent SmartBits q 某种类型的服务器,如进行负载均衡的 IBM WebSphere 服务器 q 配置有误的路由器或终端站,例如发出全零广播的设备 q 有故障的 NIC q 网络中每
5 分钟发生一次单播泛洪 LAN 交换机使用转发表(如第
2 层表和 CAM 表)按帧的 VLAN 编号和目标 MAC 地址将流量引向 特定端口.当没有条目对应于帧在传入 VLAN 中的目标 MAC 地址时,向各自 VLAN 内的所有转发 端口发送该(单播)帧.这样即导致了泛洪.泛洪的确切原因是交换机的第
2 层转发表中没有数据 包的目标 MAC 地址.在这种情况下,将从数据包所在 VLAN 中的所有转发端口(收到该数据包的 端口除外)向外泛洪该数据包. 默认的 ARP 表老化时间为
4 小时,而CAM 对于条目只保留
5 分钟.当目标 MAC 地址因老化离开 CAM 表时,交换机向各自 VLAN 内的所有转发端口发出一个帧.CAM 老化计时器需要大于或等于 ARP 超时以防止单播泛洪.作为解决方法,可以发出以下这些命令之一,以增加故障 VLAN 的CAM 老化计时器,从而匹配 ARP 老化时间: 对于 CatOS,发出 set cam agingtime 命令. q 对于 Cisco IOS 软件,发出 mac-address-table aging-time 命令. q 注意:?在运行热备份路由协议(HSRP)的所有Catalyst环境,推荐您保证CAM和ARP定时器同步. 有关交换式网络中单播数据包泛洪的可能原因和影响的信息,请参阅交换式园区网络中的单播泛洪 . 混合 CatOS 中有 ARP 问题 在混合模式, Supervisor引擎运行CatOS,并且多层交换机特性卡(MSFC)运行Cisco IOS.CatOS 运行在第
2 层,并建立 CAM 地址表以保留 VLAN、MAC 地址和端口号信息.MSFC 中的 Cisco IOS 运行在第
3 层,并建立 ARP 表以保留 IP 地址到 MAC 地址的解析.当更改任意设备(如打印 机或服务器)的IP 地址时,可能无法 Ping 通该新 IP 地址.但是,可以从相同的 VLAN Ping 通新 的IP 地址.这可能是 MSFC 上的一个 ARP 问题. 下面这个解决方法可以帮助分离并解决问题: 清除 MSFC 上的 ARP 表.MSFC2#clear arp int vlan
40 1. 验证 ARP 超时值.默认值为
4 小时.如果 VLAN 中的 ARP 超时太长,可以将超时值设置回 默认值或最佳值.MSFC2#show int vlan
40 Vlan40 is up, line protocol is up Hardware is Cat6k RP Virtual Ethernet, address is 00d0.0050.33fc (bia 00d0.005 0.33fc) Internet address is 40.40.40.3/24 MTU
1500 bytes, BW
1000000 Kbit, DLY
10 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, loopback not set Keepalive not supported ARP type: ARPA, ARP Timeout 04:00:00 Last input 00:00:00, output 00:01:44, output hang never Last clearing of show interface counters never Input queue: 0/75/0/0 (size/max/drops/flushes);
Total output drops:
0 MSFC2#conf t Enter configuration commands, one per line. End with CNTL/Z. MSFC2(config)#int vlan
40 MSFC2(config-if)#arp timeout ? Seconds MSFC2(config-if)#arp timeout
240 2. 重新启动 MSFC.MSFC2#write memory Building configuration... [OK] MSFC2#reload Proceed with reload? [confirm] Supervisor>
(enable) 3. 在查找 CAM 表期间发生 EARL-2-EARL4LOOKUPRAMERROR 错误 以下是遇到此问题时 syslog 错误输出的示例: %EARL-2-EARL4LOOKUPRAMERROR:Address eac6, data 0-0-8000-0, count
8 当执行 CAM 表查找时,就会显示此消息.当访问存储器时因奇偶校验错误会发生这种情况.当发 出show cam 命令以访问 CAM 表时,通常会产生此错误.在某些情况下,当发出 show cam 命令 时交换机也会重置. %EARL-2-EARLLOOKUPRAMERROR: Address [hex], data [hex]-[hex]-[hex]-[hex], count [dec] 此错误消息表明已检测到查找 RAM 奇偶校验错误.address [hex] 字段是转发表中检测到错误的地 址.data [hex]-[hex]-[hex]-[hex] 字段是产生了奇偶校验错误的 RAM 数据的 word
0、word
1、word2 和word3.count [dec] 字段是奇偶校验错误的总数. 此消息不是灾难性的,并且如果它只是间断地出现几次,则可能也不会导致中断情况.如果连续不 断地收到此消息,则表明交换机在向 CAM 表添加新条目时所尝试写入的 DRAM 扇区有故障.因此 需要更换 DRAM 或Supervisor 本身. Supervisor 切换之后丢失静........