一、概述
1、NAT出现的原因
解决了IP地址短缺的问题。多个用户可以使用一个IP地址与外部网络进行通讯。
2、NAT作用
NAT主要用于内网IP与公网IP的转化。当一个是由网络内的主机必须通过公网访问其他主机时,需要将是由IP地址转换为公网IP地址;反之,当数据从外部返回时,NAT将外部地址替换成内部的IP地址。这里的转换过程是通过网关/路由器实现的,称为网络地址转换(Network Address Translation,NAT),内网和外网的交叉引用,存储在网关/路由器的NAT表中;
二、NAT原理
NAT实现的方式有很多种。常见的方式为端口多路复用。
1、端口多路复用的原理
端口多路复用基于TCP/UDP协议端口号及IP地址实现NAT功能。
当局域网内部的数据包向外网传递数据时,数据包经过具有NAT功能的路由器,路由器本身会维护一个NAT转换表,这个转换表由多个IP分组(由源IP,源端口,目的IP,目的端口)组成,当路由器收到该分组时,会在表中为该IP分组分配一个路由器内部的NAT端口号,当路由器转发该IP分组时,会分别替换局域网内部IP分组中的源IP、源端口号(替换成路由器外部IP和NAT端口号),然后将数据发送出去。反之,外部网路将数据发送到内部网络的某台主机上时,也需要这种转换。
在NAT转换过程中,NAT端口是关键因素,路由器应该为每个连接分配一个唯一的NAT端口号,并及时回收不用的端口号。
2、端口多路复用的特点
优点:最大限度地节约IP地址资源,内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问;隐藏网络内部的所有主机,有效避免来自internet的攻击。
缺点:通讯只限于基于端口号通讯的TCP/UDP协议;转换过程中需要路由器对进出的各个IP分组内部字段进行操作(例如:更改源地址、更改端口号、重新计算校验和等),使得分组转发效率受到一定的影响。
三、补充
1、可用于局域网的IP地址范围
IP地址数量短缺,扩展IP地址的一种可用方式是定义是由IP地址。并进可能的重复使用是由IP地址。
是由IP地址:
10.0.0.0/8
172.16.0.0/16---172.31.0.0/16
192.168.0.0/24---192.168.255.0/24
这些私有地址只能出现在私有网络中,不能出现在公网中