首页/云/云网络与负载均衡速查/SNAT 与 DNAT 的区别

SNAT 与 DNAT 的区别

SNAT 改源地址、解决「内网出公网」;DNAT 改目的地址、解决「公网进内网」。两者方向与用途完全不同:对提供服务查 DNAT,对外访问查 SNAT——方向判断对了,排障就快一半。

对比

维度SNATDNAT
转换对象源地址(内网 → 公网)目的地址(公网 → 内网)
典型用途实例访问外部 API、拉取依赖公网端口映射到内网服务
生效范围按源网段(子网)按公网端口映射
常见问题来源未覆盖、连接数上限端口冲突、安全组放行错位

同一 NAT 网关承载两个方向

同一 NAT 网关承载两个方向
SNAT:10.10.1.0/24 → 经 eip-01 访问公网
DNAT:eip-01:443 → 10.10.1.20:8443(对外提供 API)
先明确「谁主动发起」,再决定排查 SNAT 还是 DNAT 链条。

易错点

  • 服务对外不通却一直在查 SNAT:方向一开始就判断错了
  • DNAT 与 SNAT 共用同一 EIP 时,端口与连接规划需要更细致

数据来源与参考

  • 阿里云 NAT 网关文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌