NAT
前言
随着Internet的发展和网络应用的增多,IPv4地址枯 竭已经成为制约网络
发展的瓶颈。尽管IPv6可以从根本上解决IPv4地址空间不足的问题,但目
前众多的网络设备和网络应用仍是基于IPv4的,因此在IPv6广泛应用之前,
一些过渡技术的使用是解决这个问题的主要技术手段。
网络地址转换技术NAT (Network Address Translation) 主要用于实现位
于内部网络的主机访问外部网络的功能。当局域网内的主机需要访问外部
网络时,通过NAT技术可以将其私网地址转换为公网地址,并且多个私网用
户可以共用一个公网地址,这样既可保证网络互通,又节省了公网地址。
NAT类型
静态NAT
●如果希望一台主机优先使用某个关联地址,或者想要外部网络使用一个指定的公网
地址访问内部服务器时,可以使用静态NAT.
●但是在大型网络中,这种一 对一的IP地址映射无法缓解公用地址短缺的问题。
实验:
sy
sy AR1
int g0/0/0
ip add 192.168.1.254
int g0/0/1
ip add 200.10.10.2 24
int g0/0/1
nat static global 200.10.10.3 inside 192.168.1.1
nat static global 200.10.10.4 inside 192.168.1.2
ip route-static 0.0.0.0 0 200.10.10.22
sy
sy AR2
int g0/0/0
ip add 200.10.10.22 24
int g0/0/1
ip add 100.1.1.254 24
尝试ping通,并查看NAT转换表:一对一进行转换
动态NAT
●动态NAT地址池中的地址用尽以后,只能等待被占用的公网地址被释放后,其他主机才能使用它来访问公网。
实验
sy
sy AR1
int g0/0/0
ip add 192.168.1.254 24
int g0/0/1
ip add 200.10.10.2 24
int g0/0/1
ip route-static 0.0.0.0 0 200.10.10.22
nat address-group 1 200.10.10.10 200.10.10.16
acl 2000
rule 5 permit source 192.168.1.0 0.0.0.255
int g0/0/1
nat outbound 2000 address-group 1 no-pat
# no-pat 不转换端口,只是转换地址
sy
sy AR2
int g0/0/0
ip add 200.10.10.22 24
int g0/0/1
ip add 100.1.1.254 24
所以NAT只仅仅转换地址是不够的。
NAPT
NAPT 与 NAT在名字上就是多了P(Port端口),配置类似。
实验
在VRP(模拟器)中默认是NAPT,所以刚刚加了 no-pat
sy
sy AR1
int g0/0/0
ip add 192.168.1.254 24
int g0/0/1
ip add 200.10.10.2 24
int g0/0/1
ip route-static 0.0.0.0 0 200.10.10.22
nat address-group 1 200.10.10.10 200.10.10.16
acl 2000
rule 5 permit source 192.168.1.0 0.0.0.255
int g0/0/1
nat outbound 2000 address-group 1
# no-pat 不转换端口,只是转换地址
# 默认即为pat
sy
sy AR2
int g0/0/0
ip add 200.10.10.22 24
int g0/0/1
ip add 100.1.1.254 24
再次进行测试:
我们单独用PC1来ping外网,抓包并查看转换表:
当我们同时都ping时:
这就是 动态NAT与easy IP 的不同,easy ip 只会转换成接口上的地址
Easy IP
●Easy IP适用于小规模局域网中的主机访问Internet的场景。
●小规模局域网通常部署在小型的网吧或者办公室中,这些地方内部主机不多,出接口可以通过拨号方式获取一个临时公网IP地址。Easy IP可以实现内部主机使用这个临时公网IP地址(实际家庭中路由器每次重启都会获得一个新的被分配的IP地址)访问Internet.
实验
sy
sy AR1
int g0/0/0
ip add 192.168.1.254 24
int g0/0/1
ip add 200.10.10.2 24
int g0/0/1
ip route-static 0.0.0.0 0 200.10.10.22
acl 2000
rule 5 permit source 192.168.1.0 0.0.0.255
int g0/0/1
nat outbound 2000
sy
sy AR2
int g0/0/0
ip add 200.10.10.22 24
int g0/0/1
ip add 100.1.1.254 24
NAT服务器配置
●NAT在使私网用户访问公网的同时,也屏蔽了公网用户访问私网主机的需求。
●所以当一个私网需要向公网用户提供各种网络服务时,私网中的服务器必须随时可供公网用户访问。
●NAT服务器可以实现这个需求,但是需要配置服务器私网地址和端口号转换为公网地址和端口号并发布出去。
配置命令:
实验:
sy
sy AR1
int g0/0/0
ip add 192.168.1.254 24
int g0/0/1
ip add 200.10.10.2 24
ip route-static 0.0.0.0 0 200.10.10.22
nat address-group 1 192.168.1.3 192.168.1.10
int g0/0/1
nat server protocol tcp global 200.10.10.3 888 inside 192.168.1.100 80
tip:你手上的公网的地址
sy
sy AR2
int g0/0/0
ip add 200.10.10.22 24
int g0/0/1
ip add 100.1.1.254 24
dis nat server : 查看创建的NAT服务器映射:
启动sever1:
用Client1尝试访问: