两台 F5060-D 防火墙 IRF 堆叠,两台 S7506E 交换机 IRF 堆叠,核心交换机与防火墙互联使用二层聚合方式,聚合口打 trunk 111,主备核心交换机使用四条线分别上联到主防火墙和备防火墙,出口做了 nat outbound,防火墙内网口做了 nat harpin,会话同步相关功能开启,内网主机走策略路由。从公网访问映射后的端口一切正常,内网地址访问 nat server 映射后的互联网地址加端口的时候,发现部分电脑无法访问,部分正常。尝试关掉主核心与备防火墙互联的端口,故障恢复。怀疑哈希计极化问题,尝试关闭核心聚合口的本地转发优先功能,反复调试过负载分担模式,都无法解决。因为防火墙 nat harpin 的 内网口与做映射的出口不在同一板卡,而官方提到 nat harpin 与 nat outbound 和 nat server 配合使用的时候,要求 nat harpin 的口与出网口 nat outbound 的口要在同一板卡, 怀疑是不是这个原因造成的,请解答。

nat hairpin 与 nat server、nat outbound 配合使用时,所有相关接口必须位于同一接口板卡,否则功能无法正常工作。nat server)nat hairpin)当这两个转换分别在不同板卡处理时,板卡间转发会导致 NAT 会话状态丢失,无法完成双向转换。nat server/nat outbound 的公网接口(如 G1/2/5/0 移动①、G1/2/6/0 联通①)nat hairpin enable 的内网接口(如 XGE1/2/1/2)XGE1/4/0/23)注意:两台防火墙 IRF 堆叠环境下,需确保主备防火墙的对应接口也满足同一板卡要求。session enable),并确保主备防火墙的会话表同步正常。undo link-aggregation local-preference enable),减少跨板卡转发概率。nat outbound,将内网用户的源 IP 转换为防火墙内网口地址。nat server,将公网 IP 映射为服务器私网 IP。# 查看NAT Hairpin配置所在接口板卡
display interface brief | include Hairpin
# 查看接口所属板卡信息
display device status
# 验证内网访问流量的NAT转换过程(debug模式)
debugging nat all
terminal monitor
terminal debugging
你的怀疑非常准确,这个问题确实是板卡限制和IRF流量跨框两个因素叠加导致的。
H3C 官方配置指导中明确规定:
NAT hairpin 与不同的地址转换配合工作时,这些配置所在的接口必须在同一个接口板,否则 NAT hairpin 功能无法正常工作。
在你的环境中:
出接口(NAT Outbound 口) 在防火墙的某一个接口板上(例如 Slot A)
内网口(NAT Hairpin 口) 在防火墙的另一个接口板上(例如 Slot B)
这直接触发了“跨板卡”的限制,导致 NAT Hairpin 功能工作异常。
这个现象是板卡限制和聚合链路哈希负载分担共同作用的结果。
核心交换机将多台内网 PC 的流量通过二层聚合链路发送给防火墙 IRF 集群。聚合链路基于哈希算法(如源目 IP、源目 MAC 等)将不同 PC 的流量分配到不同的物理成员链路上。这些成员链路分别连接着防火墙的主框(Master)和备框(Backup)。
流量路径的两种情况:
| 场景 | 流量路径 | 结果 |
|---|---|---|
| PC 流量被哈希到主框(Master) | NAT Hairpin 内网口和 NAT Outbound 出接口如果在主框的同一板卡上,则 NAT Hairpin 正常工作 | 正常访问 |
| PC 流量被哈希到备框(Backup) | 备框上没有 NAT Hairpin 的配置会话,或即使有也不满足板卡一致性要求,NAT Hairpin 无法正常处理 | 访问失败 |
你关闭了主核心与备防火墙互联的端口后故障恢复,正是因为强制所有流量都必须走主防火墙,从而绕过了备框上的板卡不一致问题。这也佐证了故障是由跨框流量 + 板卡限制共同引起的。
将当前内网口上的 NAT Hairpin 配置迁移到与出接口(NAT Outbound 口)在同一个接口板上的另一个内网口,或者反之将出接口迁移到与内网口同一板卡。
具体步骤:
确认当前 NAT Outbound 所在的接口板卡位置,例如 GigabitEthernet1/0/1 在 Slot 1 上
确认当前 NAT Hairpin 所在的内网接口板卡位置
将 NAT Hairpin 功能重新配置在与出接口同一板卡的内网口上
注意:NAT Hairpin 功能与内部服务器配合工作时,必须通过
protocol参数指定协议类型,否则 NAT Hairpin 功能不生效。
在防火墙的聚合口下,使用 service chassis 命令指定所有成员口的流量都由同一个框的同一块板卡来处理:
H3C 官方明确建议:防火墙堆叠最好使用冗余口冗余组,而非 IRF 双主 + 聚合口的方式。
开启会话同步,对于只转发的流量没问题,但是对于做 NAT、做 VPN 等的业务还是会有异常。推荐是主备运行冗余组冗余口配置。
如果要彻底避免此类问题,可以考虑将防火墙从 IRF 双主模式调整为 RBM(主备冗余组) 模式:
使用 redundancy group 和 redundancy interface 进行配置
结合 NQA 检测上联状态来判断出口情况
下行接口 down 时,上行也会同时切换,保证流量走单边
在实施上述任一方案前,可以做以下验证来确认诊断:
检查接口所在板卡:执行 display interface <接口名> verbose 查看各接口所在的 slot 号
检查聚合口负载分担配置:执行 display link-aggregation verbose 查看聚合口的成员口分布和哈希算法
检查 NAT 会话表:当内网主机访问失败时,执行 display nat session slot <slot-number> 查看 NAT 会话是否在备框上未被正确创建
我想问,我的主防火墙上内网口和做映射的外网口也并非在一个slot上,为什么就正常呢?不是很懂。
我想问,我的主防火墙上内网口和做映射的外网口也并非在一个slot上,为什么就正常呢?不是很懂。
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明