NAT 配置实验详解:从原理到真机配置全过程
一、什么是 NAT?为什么我们需要它?
NAT(Network Address Translation,网络地址转换),是一种将私有 IP 地址转换为公有 IP 地址的技术。 在我们日常的局域网中,大量设备使用的都是 192.168.x.x、10.x.x.x 这类私有 IP,这些地址无法直接在公网路由。NAT 就像一个 “地址翻译官”,让多个内网设备可以共享少量公网 IP 访问互联网,既解决了公网 IP 地址不足的问题,也能隐藏内网真实地址,提升网络安全性。
常见的 NAT 类型有:
- 静态 NAT:一对一的固定地址映射,适合需要外网固定访问的服务器
- 动态 NAT:多对多的地址池映射,内网设备随机获取公网地址池中的地址
- NAPT(端口地址转换):多对一的 PAT,通过不同端口区分不同内网设备,是家庭 / 企业网络中最常用的模式
二、实验拓扑与需求说明
本次实验我们以华为 VRP 系统路由器为例,搭建一个典型的 NAPT 配置场景:
拓扑结构:
- 内网路由器 R1,连接服务器 Server1 和 PC1,网段为 192.168.1.0/24
- 公网路由器 R2,模拟运营商设备,公网 IP 为 101.31.200.8/24
- R1 的外网接口连接 R2,实现内网设备访问公网的 NAT 转换
实验目标:
- 让内网 PC 和服务器可以访问公网设备
- 配置静态 NAT,让公网设备可以访问内网的服务器
- 验证 NAT 转换是否生效,查看地址映射关系
三、设备基础配置(先把路由和 IP 打通)
1. 内网路由器 R1 基础配置
bash
运行
# 配置设备名称 sysname R1 # 配置内网接口GE0/0/0(连接内网设备) interface GigabitEthernet 0/0/0 ip address 192.168.1.254 255.255.255.0 quit # 配置外网接口GE0/0/1(连接公网路由器) interface GigabitEthernet 0/0/1 ip address 101.31.200.7 255.255.255.0 quit # 配置默认路由,所有公网流量转发到R2 ip route-static 0.0.0.0 0.0.0.0 101.31.200.82. 公网路由器 R2 基础配置
bash
运行
# 配置设备名称 sysname R2 # 配置连接R1的接口GE0/0/0 interface GigabitEthernet 0/0/0 ip address 101.31.200.8 255.255.255.0 quit # 配置回网路由,确保NAT回包能回到R1 ip route-static 192.168.1.0 255.255.255.0 101.31.200.73. 内网设备 IP 配置
- Server1:IP
192.168.1.10/24,网关192.168.1.254 - PC1:IP
192.168.1.20/24,网关192.168.1.254
四、核心 NAT 配置(R1 上操作)
1. 配置 NAPT(多对一 PAT,实现内网设备访问公网)
bash
运行
# 第一步:配置ACL,定义需要转换的内网网段 acl number 2000 rule permit source 192.168.1.0 0.0.0.255 quit # 第二步:在外网接口上配置Easy IP(直接用接口公网IP做PAT) interface GigabitEthernet 0/0/1 nat outbound 2000 quit这里的nat outbound 2000就是最常用的 Easy IP 模式,直接复用外网接口的 IP 地址做端口转换,不需要额外的公网地址池,非常适合只有一个公网 IP 的场景。
2. 配置静态 NAT(让公网访问内网服务器)
如果我们需要让公网设备主动访问内网的 Server1(192.168.1.10),可以配置静态 NAT 映射:
bash
运行
# 在外网接口配置静态NAT,把公网地址的端口映射到内网服务器 interface GigabitEthernet 0/0/1 # 静态一对一地址映射 nat static global 101.31.200.9 inside 192.168.1.10 quit配置完成后,公网设备访问101.31.200.9就会被 R1 转换为访问内网的192.168.1.10。
五、验证 NAT 配置是否生效
1. 查看 NAT 转换表
在 R1 上执行以下命令,查看地址映射关系:
bash
运行
display nat session all正常情况下,你会看到内网设备的 192.168.1.x 地址被转换为外网接口的 101.31.200.7 地址,同时显示对应的端口号,说明 NAPT 转换成功。
也可以用命令查看静态 NAT 配置:
bash
运行
display nat static能看到我们配置的公网地址和内网服务器地址的映射关系,说明静态 NAT 配置成功。
2. 实际连通性测试
- 内网 PC1 ping 公网 R2 的接口 IP:能 ping 通,说明 NAPT 正常工作
- 公网设备 ping
101.31.200.9:能 ping 通,说明静态 NAT 映射生效 - 在 Server1 上开启 HTTP 服务,公网设备访问
http://101.31.200.9,能正常打开网页,验证服务访问正常
六、常见问题与排坑指南
NAT 配置了但无法访问公网?
- 先检查基础连通性:内网 PC ping 网关 R1 是否正常,R1 ping 公网 R2 是否正常
- 检查 ACL 配置:是否正确允许了需要转换的内网网段,规则是否被其他 deny 规则覆盖
- 检查路由:R1 是否配置了正确的默认路由,R2 是否配置了回网路由
静态 NAT 无法被公网访问?
- 确认静态 NAT 配置是否在外网接口上
- 检查内网服务器的网关是否指向 R1,没有网关的设备无法接收回包
- 检查设备上是否有防火墙 / 安全策略阻止了流量
多个内网设备同时访问公网时断时续?
- 检查是否配置了足够的端口池,或者改用 Easy IP 模式,避免端口不足
- 确认没有地址冲突,内网网段和公网网段不能重复
七、实验总结
通过本次 NAT 配置实验,我们实现了内网设备共享公网 IP 访问互联网,同时通过静态 NAT 实现了内网服务器的外网访问。NAT 不仅解决了公网 IP 地址短缺的问题,还能有效隐藏内网拓扑,提升网络安全性,是企业和家庭网络中必不可少的技术。
在实际工作中,我们还可以结合 NAT Server(端口映射)、NAT 地址池等功能,实现更复杂的网络访问需求,后续会给大家分享更进阶的 NAT 配置案例~
