华为防火墙故障案例:FW只接收到部分正向报文

现象描述

这类问题的现象通常是网络时通时不通或者访问网页慢。可以在PC上做ping测试,同时在中间设备FW上做流量统计,查看是否能接收到全部报文。

如下所示,在PC上使用ping向目的设备发送20个包,FW上的流统结果显示,正反向都是只接收到了11个报文,并转发了11个报文。

C:\Users\xxx> ping 10.1.1.1 -n 20
Pinging 10.166.142.229 with 32 bytes of data:Reply from 10.1.1.1 : bytes=32 time<1ms TTL=128
Reply from 10.1.1.1 : bytes=32 time<1ms TTL=128
Reply from 10.1.1.1 : bytes=32 time<1ms TTL=128
Request timed out.
Request timed out.
Reply from 10.1.1.1 : bytes=32 time<1ms TTL=128
Reply from 10.1.1.1 : bytes=32 time<1ms TTL=128
……
<sysname> system-view
[sysname] acl 3000
[sysname-acl-adv-3000] rule permit icmp source 192.168.1.1 0 destination 10.1.1.1 0
[sysname-acl-adv-3000] quit
[sysname] diagnose
[sysname-diagnose] firewall statistics acl 3000 enable
[sysname-diagnose] display firewall statistics acl
Protocol(icmp) SourceIp(192.168.1.1) DestinationIp(10.1.1.1)   
SourcePort(53552) DestinationPort(80) VpnIndex(public)   
                RcvnFrag    RcvFrag     Forward     DisnFrag    DisFrag   
Obverse(pkts) : 11          0           11          0           0             
Reverse(pkts) : 11          0           11          0           0          
   
Discard detail information:

相关告警与日志

原因分析

  1. 双机热备主备备份场景下,上游设备将连接主机和备机的接口加入到了同一个Eth-trunk口,导致只有部分流量到达主机。
  2. 双机热备主备备份场景下,上游设备指向主机和备机的路由是等价路由,导致只有部分流量到达主机。
  3. 上游设备ARP表项漂移。
  4. 上游设备ARP表项老化后未及时恢复。
  5. 路由震荡。

操作步骤

  1. 双机热备主备备份场景下,检查上游设备是否将连接主备机的接口加入到了同一个Eth-trunk口。如果是,请修改为加入到不同的Eth-trunk口再观察是否还有异常。
  2. 双机热备主备备份场景下,检查上游设备上指向主备机的路由是否是等价路由,如果是,请修改为明细路由再观察是否还有异常。
  3. 查看上游设备的ARP刷新日志(不一定存在)或多次查看ARP表项,如果存在ARP表项漂移的现象,需要进一步查找ARP表项漂移的原因。
  4. 在上游设备做流量统计,判断收到的报文与发出的报文数量是否一致,如果不一致,丢包原因是否是ARP表项缺失。
  5. 如果是ARP表项缺失导致丢包,则进一步观察故障时间点是否和ARP表项老化时间点一致,如果一致,则基本确认是ARP表项缺失引起。 
    需要再进一步查看两端设备ARP的debug信息,或者在两端设备做端口镜像抓包,确认是ARP老化之前上游设备未发送ARP探测报文,还是上游设备已发送ARP探测报文,但FW未应答ARP请求。

    <sysname> debugging arp packet 
    <sysname> debugging arp process 
    <sysname> debugging arp event 
    <sysname> debugging arp error 
    <sysname> terminal debugging
    <sysname> terminal monitor

    一般来说,动态ARP表项都存在默认老化时间,在一个动态ARP表项老化之前,设备先进行探测,如果超过设置的探测次数后仍没有应答,则此ARP表项将被删除。

     

  6. 如果确认是上游设备ARP表项漂移或ARP表项老化后未及时恢复引起,且IP地址与MAC地址的映射关系不会发生变化,可通过配置静态ARP规避。
  7. 通过查看日志等判断上游设备是否存在路由震荡的可能,若存在,则分析路由震荡原因,找到避免路由震荡的解决方案
阅读剩余
THE END