首页/网络/网络排障速查/NAT 环境排障要点(SNAT/DNAT/回环)
本包目录(235 条)
排查流程与方法36 条
连通性与链路检测54 条DNS 与解析排查46 条端口与连接检查37 条抓包与流量分析32 条应用层慢与丢包定位30 条

NAT 环境排障要点(SNAT/DNAT/回环)

NAT 是排障黑洞最多的地方:SNAT 端口耗尽、DNAT 后端变更未同步、内网访问公网映射地址(hairpin)失败;先确认连接的「真实五元组」在两端的映射关系。

网络排障速查网络更新于 2026-10-12
常见现象部分用户偶发失败、内网访问公网域名超时、连接数暴涨后新连接全挂
关键证据NAT 会话表(conntrack/网关会话)、公网侧抓包
排障核心同一连接在 NAT 前后的源/目的如何改写

查 NAT 会话与统计(Linux conntrack)

查 NAT 会话与统计(Linux conntrack)
conntrack -L -p tcp --dport 443 | head -20
conntrack -S | grep -E 'insert_failed|drop'
sysctl net.netfilter.nf_conntrack_count net.netfilter.nf_conntrack_max

hairpin(内网访问公网映射地址)判断

hairpin(内网访问公网映射地址)判断
curl -v --connect-timeout 3 https://<公网域名或EIP>/   # 内网直连超时、外网正常 → 疑似不支持回环
# 验证:改用内网直连地址访问
curl -v --connect-timeout 3 https://<内网地址>/
SNAT 端口耗尽表现为「高峰期新连接失败、已有连接正常」,与防火墙拦截极易混淆,要对比 connect 失败时段与 conntrack 计数。

易错点

  • 只在内网抓包看不到 NAT 改写,疑似 NAT 问题一定要在 NAT 设备两侧对照抓包
  • 改完 NAT 映射后忘记清理旧 conntrack 会话,老连接仍走旧映射,表现为「改了没用」

数据来源与参考

  • RFC 3022:Traditional IP NAT
  • conntrack 工具手册(nf_conntrack)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌