Internet网络中网络地址转换技术产生的背景、主要内容、内部转换机制、在网络安全中的应用以及与其它网络安全技术相比的优点。并介绍了基于网络地址转换技术的防火墙的特点和网络地址转换技术的最新发展。
关键词:防火墙 网关 内部冈 网络地址转换 访问控制
网络地址转换NAT[Network Address Trans1ator)技术是Internet网络应用中一项非常实用的技术.以往主要被应用在并行处理的动态负载均衡以及高可靠性系统的容错备份的实现上.最初,NAT技术是紧随CIDR(C1assless Inter Domnin Routing)技术的出现而出现的.二者的主要目的都是为了解决当时传统1P网络地址紧张的问题.CIDR技术通过允许用任意长度子网掩码来划分网段, 大大提高了对已注册地址的有效利用率.NAT技术则是一个有唯一出口的桩网络(STUB NETW0RK),通过地址复用来提高对已注册地址的有效利用率,这二者都为解决这一问题提供了有效的手段.
事实上,在实现 NAT技术之前,已经出现了一种类似的技术一一IP地址掩盖(IP Masquerading).它是在外部网与内部网中某一台主机进行通信时,将内部的这台主机所使用的IP地址映射为网关上的一个特定的TCP端口,使得每次外部网主机访问网关上的某一端口时,其连接中的所有IP包都被转发给这一内部主机.这样整个内部网在与外部进行通信时,再无需任何IP地址了,只需网关对外具有一个IP地址,而不同的内部网主机对外的不同连接使用网关上的不同TCP端口即可.但IP地址掩盖技术并末得到广泛认可,因为它的功能极其有限,当内部网中与外部网联系的主机数量稍有增多时,网关的TCP连接控制部分就难以应付了,而且内部主祝对外映射成不同的网关TCP端口.这对于客户消并没有什么关系,但对于提供服务的主机,就会出现服务端口不符合标淮TCP规范的问题.而NAT技术的出现迅速地取代了IP地址掩盖技术.
1 网络地址转换技术(HAT)
如上所述,NAT技术的应用环境是一个有唯一出口的桩网络,这样才能保证所有的通信都必须经过NAT技术的网关,地址的转换不发生歧义.它通过地址复用来提高对已注册地址的有效利用率.NAT技术中具体的IP地址复用方法是:在内部网中使用私有的虚拟地址,即由Internet地址分配委员会 (IANA)所保留的几段Private Network IP地址.以下是预留的Private Network地址范围:
10.0.0.0 一一 10.255.255.255
172.16.0.0 一一 172.31.255.255
192.168.0.0 一一 192.168.255.255
由于这部分地址的路由信息被禁止出现在Internet骨干网络中,所以如果在Internet中使用这些地址是不会被任何路由器正确转发的, 因而也就不会因大家都使用这些地址而相互之间发生冲突.在边界路由器中设置一定的地址转换关系表并维持一个注册的真实IP地址池(IP Pool),通过路由器中的转换功能将内部的虚拟地址映射为相应的注册地址,使得内部主机可以与外部主机间透明地进行通信.
NAT技术员一般的形式为:NAT网关依据一定的规则,对所有进出的数据包进行源与目的地址识别,并将由内向外的数据包中源地址替换成一个真实地址(注册过的合法地址),而将由外向内的数据包中的目的地址替换成相应的虚地址(内部用的非注册地址).NAT网关对地址的转换过程实例如下:
实例环境:内部网使用虚拟地址空间为10.0.0.0-10.255.255.255,对外拥有注册真实IP地址为202.119. 1.0-202.119.1.255,内部主机IHl、IH2地址分别设为10.0.1.1和10.0.2.2,另一外部网主机OH1地址为202. 112.196.7.网络拓扑结构如图1所示.

当内部网主机IH1与外部网主机OHl建立联系时,由于网关对外将其映射为一注册的真实地址202.119.1.23,所以它的IP包头中的IP地址在网关处被转换成这一地址.于是会产生图2所示的IP数据包:
(1)图2(a)为IH1发出的IP包.
(2)经过网关后被转换为图2(b)的形式.
(3)图2(c)为其返回的IP包形式.
(4)进入网关后转换为图2N)的形式.

在以上的包传输过程中,内部的虚拟地址10.0.1.1与外部的真实地址202.119.1.23之间构成一一对应关系,经过网关时须进行必要的转换工作,这正是NAT技术名称的由来.其它内部主机与外部主机连接过程与之类似,但内部主机(IHl,IH2)之间的连接直接使用虚拟地址而不需要经过网关的转换.
本例的转换形式只是一种特定的NAT转换(向转换形式).从网关的出入方向看,NAT有入向转(inbound)、出向转换 (outbound)和双向转换(bi-directional)3种形式.绝大多数应用都属于入向转换形式,其它2种形式极少用到.因为目前的网络通信基本上都是在与Internet之间发生.Internet的地址空间极其庞大,无法再做有效的地址变换(考虑IPv6的情况除外),因而外部地址一般不会在网关处进行变换.从转换对应关系的角度来看,NAT还可分为静态转换和动态转换二类.所谓静态转换就是在网关上预先设置好虚拟地址与实际地址的一一对应关系,在工作时不作实时更改;而动态转换则无需预先设置,直接由网关在运行时根据网络连接和地址空间的使用情况自行决定地址对应关系.
