首页/云/云与容器速查/NAT 网关 SNAT 与 DNAT 配置

NAT 网关 SNAT 与 DNAT 配置

SNAT 让私网批量出网(交换机粒度);DNAT 把公网端口映射到指定内网主机;两者的组合是『出网共享 + 少量端口对外』的经典配置。

云与容器速查云更新于 2026-10-13

NAT 网关的 SNAT 与 DNAT

NAT 网关承担两件事:SNAT 让整个子网的实例共享一条出口访问公网,DNAT 把公网的某个端口映射到指定内网主机。前者是出网共享,后者是少量服务对外,两者组合起来就是多数不出门、少数开个口的常见架构。

基本信息

SNAT规则为子网网段指向弹性公网 IP,同子网实例共享出网
DNAT规则为公网 IP 与端口映射到内网 IP 与端口
路由前提子网路由表要把默认路由指向 NAT 网关
限制DNAT 端口映射不做健康检查,多机对外应改负载均衡
排查顺序出网不通查 SNAT 与路由,入向不通查 DNAT 与安全组
计费NAT 网关按规格计费,处理流量另计

出网与入向排查

现象先查再查
实例无法出网SNAT 是否覆盖该子网子网默认路由是否指向 NAT
出网慢或超时NAT 规格与并发连接数是否有其他流量挤占出口
公网端口连不上DNAT 规则与端口号安全组是否放行该端口
映射后时通时断后端服务是否健康DNAT 无健康检查,需自查

配置示意

配置示意
SNAT 条目:子网 10.10.1.0/24 → 弹性公网 IP
DNAT 条目:弹性公网 IP:8080 → 10.10.1.5:80
路由:10.10.1.0/24 子网的默认路由指向 NAT 网关

典型使用场景

  • 大量内网实例需要访问外部 API 或拉取依赖,共享一条出口
  • 少量内部服务需要临时对外暴露端口做联调
  • 收拢公网出口,统一做流量审计与限速
  • 从多公网 IP 架构收敛为 NAT 出口,降低暴露面
  • 配合安全组实现只出不进的隔离网段
DNAT 端口映射不做健康检查,后端服务挂了公网端口依然通但业务报错;对外提供多机服务时应换成负载均衡。
SNAT 按子网粒度生效,新扩的子网如果没加条目就会静默无法出网,扩容流程里要把它列为必查项。
DNAT 映射的端口同样要过安全组,漏配会出现规则生效但连不上的情况,排查时容易误判为网关故障。

易错点

  • SNAT 条目只加了部分子网:遗漏的子网静默无法出网
  • DNAT 端口没配安全组:公网探测一直超时
  • 用 DNAT 承载多机服务:缺少健康检查与负载均衡,切换全靠人工
  • 忘记给子网加默认路由:NAT 网关建好也走不通
  • 出口流量不做监控:异常外联与滥用无从发现

数据来源与参考

  • 阿里云文档:SNAT/DNAT
  • 腾讯云文档:NAT 网关使用
  • 华为云文档:NAT 网关

相关工具

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