NAT(Network Address Translation,网络地址转换) 是一种网络技术,用来修改 IP 地址信息,实现私有 IP 地址和公网 IP 地址之间的转换。
简单理解:
NAT 就像网络世界里的“地址转换员”,让很多台使用私有 IP 的设备,通过一个或少量几个公网 IP 访问互联网。
因为 IPv4 地址数量有限。
例如:
家庭网络:
电脑:192.168.1.10 手机:192.168.1.20 电视:192.168.1.30
这些都是私有 IP 地址,不能直接访问 Internet。
路由器拥有一个公网 IP:
公网 IP:203.0.113.10
当设备访问互联网时:
电脑 192.168.1.10 ↓ 路由器(NAT转换) ↓ 公网 IP 203.0.113.10 ↓ Internet
外部网站看到的不是电脑的私有 IP,而是路由器的公网 IP。
例如:
电脑访问 Google:
内部网络: 192.168.1.100:50000 | | NAT ↓ 203.0.113.10:60000 | ↓ Google服务器
NAT 会记录一个转换表:
| 内部地址 | 转换后的公网地址 |
|---|---|
| 192.168.1.100:50000 | 203.0.113.10:60000 |
当返回数据回来:
Google服务器 ↓ 203.0.113.10:60000 ↓ NAT查询表 ↓ 192.168.1.100:50000
数据才能回到正确设备。
一对一转换:
内部IP 公网IP 192.168.1.10 ←→ 203.0.113.10
特点:
例如:
公司 Web 服务器:
内部服务器: 192.168.1.50 公网访问: 203.0.113.50
公网 IP 地址池转换:
私网IP 192.168.1.10 192.168.1.20 ↓ 公网池 203.0.113.10 203.0.113.11
谁需要访问 Internet,就临时分配一个公网 IP。
也叫:
这是家庭和企业最常用的方式。
多个设备共享一个公网 IP:
电脑: 192.168.1.10:5000 ↓ 公网: 203.0.113.10:6000 手机: 192.168.1.20:5001 ↓ 公网: 203.0.113.10:6001
区别靠端口号区分。
如果你正在准备 NSE4_FGT_AD-7.6(FortiGate Administrator),NAT 是重点知识。
FortiGate 中常见:
改变客户端源 IP:
例如:
内部用户 10.1.1.10 ↓ FortiGate ↓ Internet看到: 203.0.113.5
用途:
改变目标 IP。
例如:
外部用户访问:
203.0.113.20:443
FortiGate 转发:
10.1.1.20:443
用途:
FortiGate 中:
VIP = DNAT
FortiGate 流程:
数据包进入 FortiGate ↓ 查找防火墙策略 ↓ 执行 NAT(如果开启) ↓ 发送出去
例如:
Policy:
LAN → WAN Source: Internal Users Destination: all NAT: Enable
表示:
内部用户访问 Internet 时执行 SNAT。