【防火墙】接口包转发的处理顺序

2021年1月25日 作者 menhsours.alan

最近在研究IPSEC隧道的业务应用,由于业务需要将私网IP地址转换成公网(nat outbound),再走IPSEC隧道转发到对端设备,所以着手寻求资料是否支持先nat转换后再放进IPSEC隧道中,经咨询厂家,给出如下包转发的答复。可供各位参考。

数据包转发、处理顺序:

流量入方向:IPSec>URPF>NAT>防火墙>ASPF>QoS>PBR
流量出方向:防火墙+ASPF>NAT>IPSEC>QoS,策略路由在只有入方向有效,对从接口发出的包不作策略转发。

备注:接口上同时存在NAT、IPSEC策略调用,出方向是先NAT后,再匹配IPSEC的感兴趣流。入方向则是先IPSEC解封IPSEC包头,发现包的目的地址在NAT表中,则再进行NAT转换。

实验拓扑简述:
最左边的防火墙配置: loopback地址配置192.168.1.1, 出接口配置1.1.1.1的IP地址,出接口调用nat outbound,对192.168.1.1转换成211.139.183.65。
中间的路由器(模拟公网环境):左边接口配置1.1.1.2,右边接口配置2.2.2.2
最右边的防火墙配置:loopback地址配置192.168.2.1,出接口配置2.2.2.1的IP地址,出接口做了nat server,对211.139.182.65转换成2.2.2.2。
最左边的防火墙(图第一个)与最右边的防火墙(图第三个防火墙,被遮挡了)建立IPSEC隧道。
最左边的防火墙感兴趣流 原地址211.139.183.65 目的地址211.139.182.65
最右边的防火墙感兴趣流 原地址211.139.182.65 目的地址211.139.183.65

测试方案:
在最左边的防火墙上做ping测试,带源地址192.168.1.1,ping目的211.139.182.65

测试捉包:

结论:
接口出方向:支持先NAT,再放进IPSEC。
接口进方向:支持先IPSEC,再NAT转换。