Print

某局点NGFW防火墙二层转发不通经验处理案例

组网及说明


拓扑图见上,防火墙透明部署在两台路由器之间。

问题描述

右边路由器1.3去ping左边路由器1.2,发现ping不通。

过程分析

1、查看防火墙会话,发现会话有发起方到响应方,但是没有响应方到发起方。

Slot 1:

Initiator:

  Source      IP/port: 192.168.1.3/10966

  Destination IP/port: 192.168.1.2/2048

  DS-Lite tunnel peer: -

  VPN instance/VLAN ID/Inline ID: -/-/-

  Protocol: ICMP(1)

  Inbound interface: Vlan-interface1

  Source security zone: Trust

Responder:

  Source      IP/port: 192.168.1.2/10966

  Destination IP/port: 192.168.1.3/0

  DS-Lite tunnel peer: -

  VPN instance/VLAN ID/Inline ID: -/-/-

  Protocol: ICMP(1)

  Inbound interface: Vlan-interface1

  Source security zone: Trust

State: ICMP_REQUEST

Application: ICMP

Rule ID: -/-/-

Rule name:

Start time: 2022-11-30 20:50:30  TTL: 37s

Initiator->Responder:            5 packets        420 bytes

Responder->Initiator:            0 packets          0 bytes

 

Total sessions found: 1


2、在1.2这台路由器上debugging ip icmp看发现1.2收到了icmp请求报文并且给了回包

*Nov 30 21:13:41:977 2022 H3C SOCKET/7/ICMP:

ICMP Input:

 ICMP Packet: src = 192.168.1.3, dst = 192.168.1.2

              type = 8, code = 0 (echo)

 

*Nov 30 21:13:41:977 2022 H3C SOCKET/7/ICMP:

ICMP Output:

 ICMP Packet: src = 192.168.1.2, dst = 192.168.1.3

              type = 0, code = 0 (echo-reply)


3、在防火墙上debugging aspf packet看发现回包被丢弃了,原因是状态不正确。

*Nov 30 21:16:26:975 2022 H3C ASPF/7/PACKET: -COntext=1; The packet was dropped by ASPF for invalid status. Src-ZOne=Trust, Dst-ZOne=Trust;If-In=GigabitEthernet1/0/0(1), If-Out=GigabitEthernet1/0/1(2), VLAN-In=1, VLAN-Out=1; Packet Info:Src-IP=192.168.1.2, Dst-IP=192.168.1.3, VPN-Instance=none, Src-Port=10980, Dst-Port=0. Protocol=ICMP(1).


4、仔细对比会话里面的接口跟debugging aspf packet里面的接口,发现会话里面的接口是三层的vlan-int 1,但是debugging里面却是二层物理接口,因此判断是来回路径不一致导致的报文被丢弃。

  Inbound interface: Vlan-interface1

If-In=GigabitEthernet1/0/0(1), If-Out=GigabitEthernet1/0/1(2)


5、在fw连接1.3路由器的接口抓包,发现报文的目的mac不是1.2路由器的mac,而是防火墙vlan1接口的mac。


注:路由器1.2的mac为acdf-dc19-0105,防火墙vlan1接口的mac是acdf-9a4e-0202


6、检查路由器1.3的arp表,发现1.2的mac地址就是vlan1接口的mac地址,并且类型是静态,看配置里面由一条静态arp,将这个配置删掉后问题解决。

  Type: S-Static   D-Dynamic   O-Openflow   R-Rule   M-Multiport  I-Invalid

IP address      MAC address    VLAN/VSI name Interface/Link ID        Aging Type

192.168.1.2     acdf-9a4e-0202 --            GE0/0                    --    S  

192.168.1.1     acdf-9a4e-0202 --            GE0/0                    15    D   

解决方法

对于透明部署的NGFW防火墙来说,当报文进行三层转发的时候,会话看的是三层接口的安全域,当报文进行二层转发的时候,会话看的是二层接口的安全域。

造成这个问题的根本原因是在路由器1.3上面错误配置了静态arp,导致原本应该二层转发的报文走了三层转发,产生了匹配三层接口的会话,但是路由器1.2上面的arp是正确的,因此回包走了二层转发,结果匹配不上三层接口的会话,因此被ASPF丢弃。

删除错误配置的静态arp后,问题解决。