NAT
100%

子网划分 · 第 6 课

NAT

学习源地址、目标地址和端口转换如何修改 IPv4 流量与连接状态。

网络地址转换会在数据包经过转换设备时重写地址字段,而且通常也会重写传输端口。它广泛用于通过较少的外部可路由地址连接采用私有地址的 IPv4 网络。

源地址转换

源 NAT 会在数据包离开网络时替换其源地址。多对一部署还会转换源端口,使多个内部流可以共享一个外部地址。这种考虑端口的形式通常称为 NAPT、PAT;当外部地址可能变化时,也常称为伪装。

转换器会跟踪映射,以便把回复数据包转换回原始内部端点。它通常转发同一个传输流,不必像应用程序代理那样建立单独的代理连接。

源 NAT 会更改出站数据包的什么内容?

目标地址转换

目标 NAT 会重写目标地址或端口,常用于通过外部端点发布内部服务。端口转发规则可以把外部 TCP 端口映射到不同的内部地址和端口。返回流量需要进行一致的反向转换。

哪种 NAT 形式通常用于实现入站端口转发?

NAT 与防火墙策略

NAT 不是防火墙。有状态转换器可能没有与未经请求的入站流量对应的映射,但显式转发、目标转换、过滤和应用程序暴露共同决定哪些内容可达。安全策略应通过防火墙规则、最小权限服务和端到端控制明确表达并接受审计,而不能从地址重写中推断。

为什么不能把 NAT 本身视为安全策略?

运维影响

NAT 可能耗尽地址和端口映射、增加点对点协议的复杂性、让应用程序看不到原始来源,并要求特殊处理在协议中嵌入地址的情况。如果需要追踪流量,日志必须保留转换时间戳和映射详情。

在 Linux 上,现代策略通常使用 nftables 和连接跟踪进行配置。更改前应检查实际规则集:

$ sudo nft list ruleset
$ sudo conntrack -L

第二条命令需要 conntrack 工具和特权。更改规则集可能中断远程访问,因此应准备控制台恢复、原子配置、验证和回滚。

将共享地址流量追溯到内部客户端需要什么证据?

课程已完成

你已完成 NAT

现在,你可以区分地址转换、路由、代理和防火墙策略。

  • 识别出站流上的源地址转换。

  • 识别已发布服务中的目标地址转换。

  • 理解端口映射如何实现地址共享。

  • 应用显式过滤,而不是把 NAT 当作安全机制。

  • 更改期间保留映射证据和恢复通道。

保存学习进度

创建免费账户即可保存本课进度,并在任意设备上继续学习。

创建免费账户
下一节
返回 子网划分