一、什么是NAT
network address translation 网络地址转换,实现私网ip地址与公网ip地址之间的转换
二、为什么要引入NAT
上网需求巨大;IPV4公网地址短缺
在同一私网中,私有ip地址也需要满足唯一性,但在不同的私网中,私有IP地址则无需满足唯一性,这种可重复使用的特点,使私网的建设得到充分自由的发展
三、NAT的分类
1.静态NAT
在华为中,作nat的地址不能是外网的ip,所以需要买两个以上公网地址,一个作为访问外网地址,一个作地址转换的,静态NAT技术要求私有ip地址与公有IP地址保持固定不变的一 一对应关系。静态NAT并不能节约公有ip地址资源,因此,在实际部署nat时,很少采用静态NAT技术。
2.动态NAT
动态NAT包含了一个公有ip地址资源池和一张动态地址映射表。当某个私网用户发起与Internat通信时,NAT会先去检查公有ip地址资源池中是否有可用地址,没有的话此次通信就没法进行,如果有,NAT会在公有地址资源池中选一个公有ip地址,并在动态映射表中创建一个表项,当用户结束通信,NAT必须将该表项从动态地址映射表中清除,同时将该表项中的公有IP地址释放回公有地址资源池。同一个公有ip地址可以分配给不同的私网用户使用,但在使用的时间上必须错开 。
IP地址的对应关系是不确定的、随机的。1对1转换 单向
不用每个手动配置,但也是1:1,不节省ip地址
3.NAPT
为了提高公有ip的利用率,我们引入了端口映射,也称端口地址转换。是将TCP报文或UDP报文中的端口号作为映射参数纳入公有ip地址与私有ip地址之间的映射关系中,从而使得同一个公有IP地址在同一时刻可以与多个私有ip地址进行映射。端口号有2^16=65536 个
为了区分对应关系的唯一性,用相同地址的不同端口号来进行地址转换
EASY IP
在NAPT的基础上又出现了EASY IP ,是对NAPT的简化技术,EASY IP 无需建立公有ip地址资源池,因为EASY IP 只会用到一个公有ip地址,该IP地址就是路由器接口的地址,也会建立并维护一张动态地址及端口映射表,如果接口地址发生变化,那么这张表中的公有ip地址也会自动跟着变化
四、数据发送过程
数据发送过程:
数据--->路由表--->nat--->外网 返回时原路返回
当数据包从内网转发到外网的时候,查表顺序如下:
1.首先查找路由表,如果没有路由,直接丢弃;如果有路由,则判断出接口是否执行NAT;如果不执行,则发送出去,如果执行,则检查端口上的NAT的转换条目或者检查全局下配置的NAT转换条目
2.其次检查NAT转换表,如果能匹配住源ip地址,则进行对应条目转换;如果没有条目可以匹配源ip地址,则直接转发不进行任何的转换
总而言之,不管有没有nat,可不可以转换,数据都会发到外网,而不会丢弃
PS:
NAT地点:在连接私网和公网的接口的路由器上做
Nat static 命令可以在全局下【huawei】,也可以在接口下做,但nat static enable必须在出接口开
原文地址:http://blog.51cto.com/13721786/2122379