
网络地址转换—NAT—Huawei设备实现
一、NAT简介
目的
随着Internet的发展和网络应用的增多,IPv4地址枯竭已成为制约网络发展的瓶颈。尽管IPv6可以从根本上解决IPv4地址空间不足问题,但目前众多网络设备和网络应用大多是基于IPv4的,因此在IPv6广泛应用之前,一些过渡技术(如CIDR、私网地址等)的使用是解决这个问题最主要的技术手段。NAT主要用于实现内部网络(简称内网,使用私有IP地址)访问外部网络(简称外网,使用公有IP地址)的功能。当内网的主机要访问外网时,通过NAT技术可以将其私网地址转换为公网地址,可以实现多个私网用户共用一个公网地址来访问外部网络,这样既可保证网络互通,又节省了公网地址。
优点
作为减缓IP地址枯竭的一种过渡方案,NAT通过地址重用的方法来满足IP地址的需要,可以在一定程度上缓解IP地址空间枯竭的压力。NAT除了解决IP地址短缺的问题,还带来了两个好处:
有效避免来自外网的攻击,可以很大程度上提高网络安全性。
控制内网主机访问外网,同时也可以控制外网主机访问内网,解决了内网和外网不能互通的问题。
分类
根据实现方式的不同,NAT可分为以下几类:
🔔 NAT 分类
1、静态NAT:可将数据包的私网地址与公网地址进行一对一转换,但同时只允许一个私网终端访问互联网;
2、动态NAT:可将数据包的私网地址与公网地址进行一对多转换,可同时允许多个私网终端访问互联网,但非常消耗公网IP地址;
3、静态NAPT:可将数据包的私网地址、传输层端口与公网地址、传输层端口进行静态转换,既可以满足多个私网终端访问互联网,又节省了公网IP地址,但转换规则全都需要手动配置,几乎不使用;
4、动态NAPT:可将数据包的私网地址、传输层端口与公网地址、传输层端口进行动态转换,自动选择公网地址的出端口进行转换;
5、Easy-ip:动态NAPT的简单实现方式,NAPT允许多个公网IP地址的转换,而Easy-ip只允许转换为公网接口的IP地址,特别适合小型企业;
6、两次NAT:即Twice NAT,指源IP和目的IP同时转换,该技术应用于内部网络主机地址与外部网络上主机地址重叠的情况;
7、策略NAT:可根据源目地址、端口与协议进行转换,通常在防火墙上使用的一种NAT策略,可更精细的控制NAT策略;
8、NAT Server:以上NAT方式都是只允许私网终端主动访问公网时进行转换,公网无法对私网终端进行主动访问,而NAT Server可将私网内服务器的某个端口映射到公网IP的端口上,使得公网用户可进行访问(也可以整个私网地址映射到一个公网IP地址上,此时NAT Server与静态NAT效果一样);
在配置时需要注意:静态NAT与NAT Server的整个地址映射时,监听的公网地址不能是该接口配置的IP地址;
实现原理
🔔 NAT实现原理
1、当私网终端访问公网服务器的数据包通过出口路由器时,如果配置了NAT,则将数据包外层的源IP地址与源端口转换为出口路由器公网地址与端口号;
2、在系统缓存中生成一个NAT会话表(NAT Session),其中记录的内部地址、端口号与出口路由器公网地址、端口号信息和目标服务器地址、端口等,当后续私网终端数据包再次发来如果匹配该会话表可直接进行转换,无需再通过匹配。
3、当服务器回复私网设备时,根据服务器发送数据包的源目的地址、端口等信息与本地的NAT Session表进行交叉匹配(服务器源与出口路由器的目的,服务器的目的与出口路由器的源)。如果交叉匹配成功,则将该回应报文中的目的地址、端口号转换为私网地址、端口号即可完成转换。因此该过程实际是一个:请求包转换源,回应包转换目的的过程;
4、如果是静态或者动态NAT,上述过程无需进行端口转换;
NAT过滤
NAT过滤是指NAT设备对外网发到内网的流量进行过滤,是设备启用NAT后默认开启的功能,包括以下4种类型:
🔔 NAT过滤的三种类型
Full Cone NAT(全锥形—NAT1): 与外部地址无关的NAT过滤行为,内部设备与外部设备通信后在出口路由器上暴露一个端口,外部任意主机的任意端口访问该端口都可正常通信;
Restricted Cone NAT(IP限制锥形—NAT2): 与外部地址相关的NAT过滤行为,内部设备与外部设备通信后在出口路由器上暴露一个端口,外部固定主机的任意端口访问该端口可正常通信;
Port Restricted Cone NAT(端口限制锥形—NAT3): 与外部地址和端口都相关的NAT过滤行为(大部分家庭宽带的NAT类型,也是设备默认的NAT类型),内部设备与外部设备通信后在出口路由器上暴露一个端口,外部固定主机的固定端口访问该端口可正常通信;
Symmetric NAT(对称形—NAT4): 不同外部主机不同外部地址和端口都相关的NAT,内部设备与不同外部设备通信后在出口路由器上分配不同的公网IP地址与端口,外部固定主机的固定端口访问该地址和端口才可正常通信,属于最严格最安全的类型,但局域网内设备的连接也最容易出现问题;
总结: 前面三种NAT类型都是锥形网络,内网主机使用固定的公网IP和端口进行所有的外部通信,区别在于NAT设备防火墙的安全策略不同,对称形限制最严格,场景最复杂,通常运营商检测到用户使用PCDN后会将其NAT类型变为对称形网络。
全锥形网络
IP限制锥形网络
端口限制锥形网络
对称形网络
二、NAT配置
1、静态NAT配置
interface g 0/0/1 # 公网接口
nat static global 20.1.1.2 inside 192.168.1.1 netmask 255.255.255.255 # 在本接口上监听20.1.1.2地址并映射到私网的192.168.1.1私网地址上
2、动态NAT配置
acl 2000
rule permit source 192.168.1.0 0.0.0.255
#
nat address-group group_name 20.1.1.2 20.1.1.10
interface g 0/0/1
nat outbound 2000 address-group group_name no-pat
3、动态NAPT配置
acl 2000
rule permit source 192.168.1.0 0.0.0.255
#
nat address-group group_name 20.1.1.2 20.1.1.10
interface g 0/0/1
nat outbound 2000 address-group group_name
4、Easy-ip配置
acl 2000
rule permit source 192.168.1.0 0.0.0.255
#
interface g 0/0/1
nat outbound 2000
5、NAT Server配置
interface g 0/0/1
nat server protocol tcp global current-interface 8081 inside 192.168.1.1 80 # 将本接口地址的8081端口映射到私网192.168.1.1的80端口
nat server global 20.1.1.2 inside 192.168.1.1 # 在本接口上监听20.1.1.2地址并将其全部映射到私网192.168.1.1
- 感谢你赐予我前进的力量