一、NAT网络地址转换
1、产生背景
- IPv4公网地址资源耗尽
- IPv6普及遥遥无期
- 子网划分杯水车薪
2、定义
网络地址转换;通过把私有地址转换为公有地址,使私有IP地址主机可以访问互联网,来解决公网地址不够用的问题
3、分类
静态 NAT
把公有地址一对一的静态映射给私有地址使用
基本 NAT
建立公有地址池,把地址池中的公有地址动态的映射给私有地址使用。本质上仍然是一对一的映射
NAPT
把公有地址和端口动态的映射给私有地址和端口,实现一个公有地址可以供多个私有地址同时使用访问互联网
转换源IP和源端口,数据回包还原目的IP和目的端口
Easy IP
NAPT的一种简易实现形式
适用于公网地址不固定的场景
NAT Server
把公网IP的某个端口固定映射到私网IP的某个端口,让公网上的用户可以主动访问私网中的服务
转换目的IP和目的端口,数据回包还原源IP和源端口
也称端口映射
二、NAT实验
实验拓扑
![](https://i-blog.csdnimg.cn/blog_migrate/5e61fdf4152c80ba01e35dba34a3e596.png)
实验需求
- 按照图示配置 IP 地址
- 私网 A 通过 R1 接入到互联网,私网 B 通过 R3 接入到互联网
- 私网 A 内部存在 Vlan10 和 Vlan20,通过 R1 上单臂路由访问外部网络
- 私网 A 通过 NAPT 使 Vlan10 和 Vlan20 都能够使用 R1 的公网地址访问互联网
- 私网 B 通过在 R3 上配置 EASY IP 访问互联网
- 私网 A 配置 NAT SERVER 把 FTPA 的 FTP 服务发布到公网,使 PCB 可以访问
实验解法
1、配置IP
配置 IP 地址部分略
2、配置默认路由
R1 和 R3 上配置默认路由指向公网,配置步骤略
3、配置单臂路由
私网 A 内部单臂路由配置部分略
4、配置NAT
私网 A 通过 NAPT 使 Vlan10 和 Vlan20 都能够使用 R1 的公网地址访问互联网
分析:根据需求得知,ACL 需要配置允许 192.168.1.0/24 和 192.168.2.0/24 网段;私网 A 只有 1 个公网地址可用,意味着创建的 NAT 地址池起始和结束地址就都是 100.1.1.1
步骤 1:R1 上创建基本 ACL,允许 192.168.1.0/24 和 192.168.2.0/24 网段
[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
步骤 2:R1 上创建 NAT 地址池,设置公网地址
[R1]nat address-group 1
[R1-address-group-1]address 100.1.1.1 100.1.1.1
步骤 3:在 R1 的公网接口上配置 NAPT
[R1]interface g0/1
[R1-GigabitEthernet0/1]nat outbound 2000 address-group 1
步骤 4:在 PCA 上 Ping R3 的公网地址,测试是否可以访问互联网
<PCA>ping 100.2.2.3
Ping 100.2.2.3 (192.168.2.10): 56 data bytes, press CTRL_C to break
56 bytes from 100.2.2.3: icmp_seq=0 ttl=254 time=22.000 ms
56 bytes from 100.2.2.3: icmp_seq=1 ttl=254 time=51.000 ms
56 bytes from 100.2.2.3: icmp_seq=2 ttl=254 time=21.000 ms
56 bytes from 100.2.2.3: icmp_seq=3 ttl=254 time=43.000 ms
56 bytes from 100.2.2.3: icmp_seq=4 ttl=254 time=34.000 ms
5、配置EASY IP
私网 B 通过在 R3 上配置 EASY IP 访问互联网
分析:根据需求得知,ACL 需要配置允许 192.168.1.0/24 网段;使用 EASY IP,就无需配置 NAT 地址池,直接在公网接口上配置即可,EASY IP 会自动识别公网接口的 IP 地址
步骤 1:R3 上创建基本 ACL,允许 192.168.1.0/24 网段
[R3]acl basic 2000
[R3-acl-ipv4-basic-2000]rule permit source 192.168.1.0 0.0.0.255
步骤 2:在 R3 的公网接口上配置 EASY IP
[R3]interface g0/0
[R3-GigabitEthernet0/1]nat outbound 2000
步骤 4:在 PCB 上 Ping R1 的公网地址,测试是否可以访问互联网
<PCB>ping 100.1.1.1
Ping 100.1.1.1 (192.168.1.10): 56 data bytes, press CTRL_C to break
56 bytes from 100.1.1.1: icmp_seq=0 ttl=254 time=32.000 ms
56 bytes from 100.1.1.1: icmp_seq=1 ttl=254 time=29.000 ms
56 bytes from 100.1.1.1: icmp_seq=2 ttl=254 time=41.000 ms
56 bytes from 100.1.1.1: icmp_seq=3 ttl=254 time=33.000 ms
56 bytes from 100.1.1.1: icmp_seq=4 ttl=254 time=34.000 ms
6、配置NAT SERVER
私网 A 配置 NAT SERVER 把 FTPA 的 FTP 服务发布到公网,使 PCB 可以访问
分析:根据需求得知,需要发布 FTPA 的 FTP 服务,也就是把 R1 的公网地址的 20 和 21 端口映射到 FTPA 的私网地址
6、配置FTP
配置 FTP 服务步骤略
步骤 1:在 R1 的公网接口上配置 NAT SERVER,映射端口 20 和 21
[R1-GigabitEthernet0/1]nat server protocol tcp global current-interface 20 21 inside 192.168.1.10 20 21
步骤 2:在 PCB 上测试是否能够通过 R1 的公网地址访问 FTPA 的 FTP 服务
<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)):