NAT技术:SNAT与DNAT区别详解

发布于:2025-09-15 ⋅ 阅读:(18) ⋅ 点赞:(0)

1. 什么是NAT?

  • 定义:NAT 是一种网络技术,用于在私有网络(如家庭或企业局域网)公共网络(如互联网) 之间转换IP地址。它允许使用私有IP地址的设备通过一个(或多个)公共IP地址访问互联网。
  • 核心作用
    • 解决IPv4地址短缺问题(多个设备共享1个公网IP)。
    • 隐藏内部网络结构,提升安全性。
    • 简化网络管理(内网使用灵活私有地址)。

2. NAT的常见分类

根据实现方式和功能,NAT主要分为以下类型:

类型 说明
静态NAT 一对一固定映射(1个私有IP ↦ 1个公网IP),常用于服务器对外提供服务。
动态NAT 多个私有IP动态共享一个公网IP池(无固定绑定)。
PAT/NAT重载 最常用类型,通过端口号区分连接(多个私有IP ↦ 1个公网IP + 不同端口)。
SNAT 源地址转换(内网设备访问外网时修改源IP)。
DNAT 目的地址转换(外网访问内网服务时修改目标IP)。

3. DNAT与SNAT的区别

特性 SNAT(Source NAT) DNAT(Destination NAT)
转换对象 修改数据包的源IP地址 修改数据包的目标IP地址
数据流向 内网设备 → 外网(出站流量 外网用户 → 内网服务器(入站流量
典型场景 内网PC访问互联网 互联网用户访问内网服务器(如Web服务器)
修改位置 通常在路由器/防火墙的出口执行 通常在路由器/防火墙的入口执行
配置关键词 masquerade(Linux)、source-nat(防火墙) port-forwardingvirtual-server
工作流程对比
  • SNAT示例
    PC(192.168.1.10) → 路由器(SNAT) → 目标网站
    网站看到的是路由器的公网IP(如 203.0.113.1)。

  • DNAT示例
    外网用户 → 路由器(DNAT) → 内网服务器(192.168.1.100:80)
    用户访问的是路由器的公网IP,但被转发到内网服务器。


4. 应用实例

SNAT 典型场景
  1. 家庭网络上网

    • 所有手机/电脑通过路由器的单一公网IP访问互联网。
    • 路由器自动执行SNAT(端口复用),无需用户配置。
  2. 企业内网共享出口

    • 成百上千员工PC通过防火墙的SNAT功能共用少量公网IP访问外网。
DNAT 典型场景
  1. 远程访问内网服务器

    • 将公网IP的 TCP 80端口 映射到内网Web服务器(192.168.1.100:80)。
    • 用户访问 http://公网IP → 路由器DNAT → 内网服务器。
  2. 游戏主机/NAS端口开放

    • 将公网IP的 UDP 3074端口 映射到内网Xbox主机,解决NAT严格类型问题。
  3. 云服务器反向代理

    • 公有云负载均衡器将用户请求(目标IP)转发到后端私有子网的虚拟机。

5. 总结对比表

场景 SNAT DNAT
主要目的 隐藏内网结构,共享公网IP 暴露内网服务到公网
方向 出站(Outbound) 入站(Inbound)
配置位置 网关的出接口/防火墙策略 网关的入接口/端口转发规则
影响的数据包字段 源IP + 源端口 目标IP + 目标端口

💡 关键记忆点

  • SNAT:内网设备主动“出去”时改源地址(Source)。
  • DNAT:外部流量“进来”时改目标地址(Destination)。

通过NAT技术,有限的IPv4地址得以高效复用,同时平衡了安全性与服务可达性。实际应用中常结合SNAT和DNAT(如企业防火墙同时配置上网共享和服务器发布)。