目录
实验视频简讲解链接
NAT协议概述
NAT 网络地址转换
NAT协议种类归类:
NAT实验练习
实验拓扑
实验设备准备设置
实验验证过程
第一部分: 验证静态NAT
第二部分:验证多对多的动态NAT
编辑
第三部分:验证PAT 多对一的NAT地址映射
第四部分: 实现外网IP访问内部网络
解决办法: 配置端口静态映射
NAT:把内网、外网的IP进行映射(转换)
NAT执行过程:1、定义NAT转换规则,使用ACL将内网网段归结起来;
2、运用到接口(inside & outside) 定义接口的朝向。
1、1对1映射【静态映射】
特殊的静态映射:端口静态映射
将用于外网访问内网的设置表项映射
2、多对多映射【地址池pool映射】
3、多对1映射【Port AT】
动态给每一个映射分配一个端口
show ip nat translation
debug ip nat
clear ip nat translation *
ping 目标 source 源
使用GNS3模拟器验证:静态NAT;动态NAT(多对多); PAT(多对一); 内网与外网之间的通信的实现过程。
路由器模拟PC机:
no ip routing
int fa0/0
ip add ......
no shut
ip default-gateway ......
以PC1为例,其它主机设备同PC1的相同配置操作
第一部分: 验证静态NAT
R1(config)#ip nat inside source static 10.10.10.1 14.14.14.1
R1(config)#int f 0/0
R1(config-if)#ip nat inside
R1(config-if)#int s 1/0
R1(config-if)#ip nat outside
PC1成功Ping通网关
PC1成功Ping通外网
检查R1上的NAT映射表
查看NAT映射表命令
PC2的私有IP地址无法与公网IP地址建立映射,因为静态NAT采用的是一对一的映射模式,PC1与R1的外网地址已建立映射占用了公有IP地址。
R2(config)#access-list 1 permit 172.16.1.0 0.0.0.255
R2(config)#ip nat pool netbox 24.24.24.0 24.24.24.200 netmask 255.255.255.0
R2(config)#ip nat inside source list 1 pool netbox
R2(config)#int f 0/0
R2(config-if)#ip nat inside
R2(config-if)#int s 1/0
R2(config-if)#ip nat outside
查看地址映射表
从映射表中可以看出:
PC3的主机地址 172.16.1.1 映射的公网IP地址为 24.24.24.1
PC4的主机地址 172.16.1.2 映射的公网IP地址为 24.24.24.2
验证PC3和PC4可以成功访问外网
第三部分:验证PAT 多对一的NAT地址映射
R3(config)#access-list 1 permit 192.168.1.0 0.0.0.255
R3(config)#ip nat inside source list 1 interface s1/0 overload
R3(config)#int f 0/0
R3(config-if)#ip nat inside
R3(config-if)#int s 1/0
R3(config-if)#ip nat outside
查看地址映射表
可以看出:
PC5 的私有地址 192.168.1.1 转换为了公有IP地址 34.34.34.3:5(用端口号5标记区分)
PC5 的私有地址 192.168.1.2 转换为了公有IP地址 34.34.34.3:1(用端口号1标记区分)
验证PC5和PC6可以成功访问外网
第四部分: 实现外网IP访问内部网络
因为配置NAT协议后内网的私有地址与外网的公有地址是根据在边界路由器(R1 R2 R3)中的NAT映射表实现公私网络地址的映射转换访问。
具体过程为:公私网络地址的映射表存在于边界路由器上,主机通过访问网关在边界路由器上找到了自身网络与外网的映射关系,从而可以确定路径成功访问外网。
相反的,外网想要访问内网,会通过IP信息传递依次查看R4(自身)R1(边界路由器)上是否有对应的IP地址映射表项(如下图没有表项),所以外网IP无法直接 访问PC2内网地址。
解决办法: 配置端口静态映射
注意到是,R4在访问PC2的过程中,是通过访问边界路由器上的公网IP地址再通过映射的表项实现对PC2的访问。
【检测方法】
R1#show ip nat translations
Pro Inside global Inside local Outside local Outside global
icmp 15.15.15.1:5 10.10.10.254:5 15.15.15.5:5 15.15.15.5:5