NAT原理与实验指南:网络地址转换技术解析与实践
NAT实验
NAT(Network Address Translation,网络地址转换):
-
NAT技术的介绍:
随着Internet用户的快速增长,以及地址分配不均等因素,IPv4地址(约40亿的空间地址)已经陷入不敷使用的窘境。为了解决这个问题,IETF 提出了 NAT 解决方案。IP地址分为公有地址(Global Address)和私有地址(Private Address)。公有地址由 IANA 统一分配,用于 Internet 通讯;私有地址可以自由分配,用于网络内部通讯。NAT技术的主要作用就是将私有地址转换成共有地址,使私有网络中的主机可以通过共享少量公有地址访问 Internet。
NAT只是一种过渡技术,从根本上解决地址供需问题的方式是采用支持更大地址空间的下一代IP技术——IPv6 协议。
-
NAT核心原理:
- 出方向(私→公):将私网IP+端口映射为公网IP+端口。
- 入方向(公→私):根据映射表将公网IP+端口还原为私网IP+端口。
- 关键表项:设备动态维护 NAT Session表(记录映射关系)和 NAT地址池(公网地址资源)。
- IPv4单播地址预留地址段(Private Address Space):
- 10.0.0.0/8*(10.0.0.0 ~ 10.255.255.255)*
- 172.16.0.0/12*(172.16.255.255 ~ 172.31.255.255)*
- 192.168.0.0/16*(192.168.0.0 ~ 192.168.255.255)*
-
NAT分类:
- 静态NAT:
- 原理:
将一个私网IP固定绑定一个公网IP(无端口转换),建立双向静态映射。 - 特点:
- 公网IP永久独占,浪费地址资源
- 支持入站访问(公网可直接访问私网主机)
- 无会话超时机制
- 原理:
- 基本NAT(动态NAT):
- 原理:
私网IP动态分配公网IP(不转换端口),地址池耗尽时新连接失败。 - 特点:
- 不支持端口复用,一个私网连接独占一个公网IP
- 会话超时后地址回收
- 不支持入站访问
- 原理:
- NAPT(Network Address Port Translation):
- 原理:
多个私网IP共享公网地址池,通过端口号区分不同会话(IP+端口同时转换)。 - 特点:
- 高效利用IP(1个公网IP支持数万并发)
- 仅支持出站访问
- 需维护复杂Session表
- 原理:
- Easy IP:
- 原理:
NAPT的特例,直接使用公网接口的IP作为转换地址(无需地址池)。 - 特点:
- 节省配置(尤其适合动态获取公网IP的场景)
- 单IP支撑整个私网出口
- 家庭宽带/小型企业首选
- 原理:
- NAT Server:
- 原理:
将公网IP的指定端口静态映射到私网服务器的指定端口(支持协议类型)。 - 特点:
- 精准控制入站流量
- 支持端口重定向(如公网8080→私网80)
- 与防火墙策略配合保障安全
- 原理:
- 静态NAT:
-
决策图:
实验:
一、实验拓扑
二、实验需求
- 按照图示配置 IP地址
- 在 R1 和 R3 上配置默认路由指向公网,使私网A、B接入互联网
- 私网A按照图示配置 VLAN ,通过R1单臂路由访问互联网
- 私网A通过在 R1 上配置 NAPT使 VLAN10 和 VLAN20 都使用 R1 的公网地址访问互联网
- 私网B通过在 R3 上配置 EASY IP 访问互联网
- 私网A配置 NAT SERVER 把 FTP-A 的 FTP 服务映射到公网,使用 PCB 访问 FTP-A 的 FTP 服务
三、实验步骤
-
按照图示配置 IP地址,略
-
在 R1 和 R3 上配置默认路由指向公网,使私网A、B接入互联网,略
静态路由实验:配置简单的高安全低消耗的可控性强路由
三个静态路由实验:一篇文章教会你怎么配置静态路由 -
私网A按照图示配置 VLAN ,通过R1单臂路由访问互联网,略
单臂路由网络隔离与跨 VLAN 通信实验 -
私网A通过在 R1 上配置 NAPT使 VLAN10 和 VLAN20 都使用 R1 的公网地址访问互联网
[R1]acl basic 2000 [R1-acl-ipv4-basic-2000]rule permit source 192.168.1.0 0.0.0.255 [R1-acl-ipv4-basic-2000]rule permit source 192.168.2.0 0.0.0.255 [R1-acl-ipv4-basic-2000]qu
[R1]nat add [R1]nat address-group 1 [R1-address-group-1]address 100.1.1.1 100.1.1.1 [R1-address-group-1]qu
[R1]int g0/1 [R1-GigabitEthernet0/1]nat outbound 2000 address-group 1 [R1-GigabitEthernet0/1]qu
-
私网B通过在 R3 上配置 EASY IP 访问互联网
[R3]acl basic 2000 [R3-acl-ipv4-basic-2000]rule permit source 192.168.1.0 0.0.0.255 [R3-acl-ipv4-basic-2000]qu
[R3]int g0/0 [R3-GigabitEthernet0/0]nat ou [R3-GigabitEthernet0/0]nat outbound 2000 [R3-GigabitEthernet0/0]qu
-
在 FTP-A 上配置 FTP 服务,略
实验环境下的网络协议比较:FTP文件传输、TELNET远程登录与SSH安全通信 -
私网A配置 NAT SERVER 把 FTP-A 的 FTP 服务映射到公网,使用 PCB 访问 FTP-A 的 FTP 服务
[R1]int g0/1 [R1-GigabitEthernet0/1]nat server protocol tcp global current-interface 20 21 in side 192.168.1.1 20 21 [R1-GigabitEthernet0/1]qu
<PCB>ftp 100.1.1.1 Press CTRL+C to abort. Connected to 100.1.1.1 (100.1.1.1). 220 FTP service ready. User (100.1.1.1:(none)): wiltjer 331 Password required for wiltjer. Password: 530 Login authentication failed ftp: Login failed. Remote system type is UNIX. Using binary mode to transfer files. ftp>