隧道建立成功(能看到IPsec SA)但业务流量不通,这是一个非常典型的“隧道通、业务断”问题。结合你提到的“两端均为NAT”、“兴趣流ACL无匹配”、“100.64开头的电信内网地址”等关键信息,问题大概率出在NAT优先级、ACL配置顺序或NAT穿透的兼容性上。下面帮你系统地排查一下:
你提到“查看IPsec SA可以看到,两边设备均看到隧道建立”,这说明IKE协商(阶段1)和IPsec协商(阶段2)是成功的。既然控制面通了,数据面不通,问题肯定出在数据报文如何处理上。关键线索是“兴趣流ACL查看无匹配”,这意味着触发IPsec加密的流量匹配条件没有被满足。
你提到“兴趣流ACL查看无匹配”,这是问题的核心。请执行以下操作:
确认ACL规则方向:在H3C设备上,用于IPsec的ACL,其规则中的源/目的地址通常需要互为镜像。例如,本端内网是192.168.1.0/24,对端内网是10.0.0.0/24,那么ACL规则应该是:
本端:rule permit ip source 192.168.1.0 0.0.0.255 destination 10.0.0.0 0.0.0.255
对端:rule permit ip source 10.0.0.0 0.0.0.255 destination 192.168.1.0 0.0.0.255
检查ACL匹配次数:使用命令 display acl 3000(假设ACL编号为3000),查看规则后面的匹配次数。如果匹配次数始终为0,说明触发IPsec的流量(如ping包)根本没有匹配到这条规则。
ACL顺序问题:确保你的IPsec感兴趣流ACL中只有一条permit规则(或者多条但顺序正确),并且它前面没有被其他permit规则意外匹配到。H3C的ACL是从上到下顺序匹配的,一旦匹配到permit规则就停止匹配。如果在它上面有一条rule permit ip source any或rule permit ip source 192.168.1.0 0.0.0.255之类的宽泛规则,流量就会被那条规则匹配,从而绕过IPsec。
这是一个非常经典的陷阱:NAT的优先级高于IPsec。你的配置思路是正确的,需要nat outbound绑定ACL来deny掉兴趣流,但必须确保这个deny规则能匹配到。
检查NAT ACL的规则:假设你的NAT ACL是2000,里面应该有一条:rule deny ip source 192.168.1.0 0.0.0.255 destination 10.0.0.0 0.0.0.255 # 拒绝将去往对端内网的流量进行NATrule permit ip source any # 允许其他所有流量进行NAT
检查ACL匹配顺序:同样,用display acl 2000查看匹配次数。确保rule deny的匹配次数在增长。如果rule permit的匹配次数在增长而rule deny没有,说明rule deny没生效,流量被更早的permit规则匹配并做了NAT转换,导致发往对端的源地址变成了公网地址,而不是内网地址,因此对端设备无法正确回包。
你的新站点使用PPPoE拨号获得了100.64.x.x的地址,这是电信级NAT(CGNAT)的地址段。这意味着你的F1000-ak125实际上处于两层NAT之后(先经过电信的CGNAT,再经过你自己防火墙的NAT?或者防火墙直接面对CGNAT?)。这种情况对NAT穿透的兼容性要求更高。
确认NAT-T已开启:你已经确认两边都开启了NAT-T(NAT穿越),这是正确的。NAT-T会将IPsec的ESP协议(协议号50)封装在UDP的4500端口中,从而能顺利通过中间的多级NAT设备。
检查UDP 4500:在隧道建立后,可以在F1000上通过display ipsec sa查看,确认SA中显示的封装模式是否为UDP-ENCAP,这表示NAT-T生效了。
对端设备处理:深信服设备作为固定公网IP的一端,需要正确识别并处理来自100.64.x.x这种经过多层NAT的源。通常它应该能自动适应,但如果是较老的版本,可能存在兼容性问题。可以尝试在对端深信服设备上,将本端身份认证ID设置为%(任意)或明确指定为F1000的NAT后公网地址(即100.64.x.x)。
路由:在F1000上,去往对端内网的路由,下一跳应该是指向IPsec隧道(通常会自动生成),而不是指向物理出口。可以使用display ip routing-table protocol static等命令查看是否有指向Tunnel接口的静态路由。如果没有,需要手动添加一条去往对端内网的静态路由,出接口指定为IPsec虚拟隧道接口(如果有)或下一跳为对端公网地址并绑定VPN实例。
安全策略:虽然你提到防火墙策略放通了,但还是要再确认一下:
域间策略:源安全域(通常是Trust,连接内网),目的安全域(通常是Untrust或VPN专用域,连接对端内网),动作是permit。
策略匹配:可以使用display security-policy statistics或抓包来确认策略确实匹配到了你的ping流量。
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明