沙贤龙
摘要:Internet面临的最紧迫的两个问题是IP地址短缺和路由的可扩展性,为此开发了IPV6,但在正式实施之前,NAT作为目前的解决IP地址短缺的方案被广泛应用,本文就NAT的基本原理及实现方法进行了介绍,详细说明了怎样在路由器中配置NAT。
关键词:NAT(网络地址转换) 私有地址 公有地址
NAT(Network Address Translation)称为“网络地址转换”, 它是一个IETF(Internet Engineering Task Force, Internet工程任务组)标准,允许一个整体机构以一个公用IP(Internet Protocol)地址出现在Internet上。顾名思义,它是一种把内部网络的私有地址转换成公有IP地址的技术。简单的说,NAT就是在局域网内部网络中使用私有地址,而当内部节点要与外部网络进行通讯时,就将内部私有地址转换成公有地址,从而在外部公网(internet)上正常使用,NAT可以使多台计算机共享Internet连接,这一功能很好地解决了公共IP地址紧缺的问题。同时通过这种方法,您可以只申请一个合法IP地址,就把整个局域网中的计算机接入Internet中,这样也节约了开支。
一、 NAT的基本原理和类型
(一) NAT的基本原理
NAT技术能帮助解决令人头痛的IP地址紧缺的问题,而且能使得内外网络隔离,提供一定的网络安全保障。解决问题的方法是:在内部网络中使用内部私有地址,当要访问外部网络时,通过NAT把内部私有地址转换成公有地址在Internet上使用,其具体的做法是把IP包内的地址域用公有IP地址来替换。NAT功能通常被集成到路由器、防火墙、ISDN路由器或者是单独的NAT设备中。NAT设备维护一个状态表,用来把私有地址映射到公有地址上去。每个包在NAT设备中都被转换成公有地址,发往下一级。
(二) NAT的类型
NAT有三种类型:静态地址NAT(Static NAT)、动态地址NAT(Pooled NAT)、网络地址端口转换NAPT(Network Address Port Translation)。其中静态NAT是设置起来最为简单和最容易实现的一种,内部网络地址中的每个主机都被永久映射成外部网络中的某个合法的地址。而动态地址NAT则是在外部网络中定义了一系列的合法地址,采用动态分配的方法映射到内部网络。NAPT则是把内部网络地址映射到外部网络的一个IP地址的不同端口上。根据不同的需要,三种NAT方案各有利弊。
动态地址NAT只是转换IP地址,它为每一个内部的IP地址分配一个临时的外部IP地址,主要应用于拨号,对于频繁的远程联接也可以采用动态NAT。当远程用户联接上之后,动态地址NAT就会分配给他一个IP地址,用户断开时,这个IP地址就会被释放而留待以后使用。
网络地址转换NAPT(Network Address Port Translation)是人们比较熟悉的一个地址转换方式。NAPT主要普通应用于接入设备中,它可以将中小型的网络隐藏在一个合法的IP地址后面。NAPT与NAT不同,它将内部连接映射到外部网络中一个单独的IP地址上,同时在该地址上加上一个同NAT设备选定的TCP端口号。在Internet中使用NAPT时,所有不同的TCP和UDP信息流看起来好像来源于同一个IP地址。这个优点在小型办公网络中非常实用,通过从ISP申请一个IP地址,将多个连接通过NAPT接入Internet。
二、 NAT的配置
(一) 在路由器中实现NAT
1、静态地址NAT及其配置
静态地址转换:它是将内部本地地址与内部合法地址进行一对一的转换,且需要指定和哪个合法地址进行转换。如果内部网络有E-mail服务器或FTP服务器等可以为外部用户提供的服务,这些服务器的IP地址必须采用静态地址转换,以便外部用户可以使用这些服务。
2、动态地址NAT及其配置
动态地址转换:它是将本地地址与内部合法地址一对一的转换,但是动态地址转换是从内部合法地址池中动态地选择一个未使用的地址对内部本地地址进行转换。
3、复用动态地址NAPT及其配置
复用动态地址转换:它是一种动态地址转换,但是它可以允许多个内部本地地址共用一个内部合法地址。只申请到少量IP地址但却经常同时有多于合法地址个数的用户上外部网络的情况,这种转换极为有用。 注意:当多个用户同时使用一个IP地址,外部网络通过路由器内部利用上层的如TCP或UDP端口号等唯一标识某台计算机。
(二) 在防火墙中实现NAT
使用路由器实现NAT时,常常会造成路由器的性能降低,这是因为每一个经过路由器的数据表都要经过NAT的转换过程,这必然消耗系统的CPU资源,而且转换的中间结果还要暂存在内存中以便于回应数据的恢复。
近年来,防火墙的应用越来越多普及,可将NAT配置在防火墙中,这样可以大大减轻路由器的负担。而且对于防火墙来说,它的主要功能即是完成这种复杂的任务,它的体系结构设计也充分考虑了这种应用的存在,因此,性能不至于将路由器一样明显示下降。配置方法(略)
三、 应用NAT技术的问题
(一)难以处理报文内容中含有有用的地址信息,在地址转换的过程中,转换了数据包的地址,但是如果数据包数据含有有用的地址转换信息,这种情况地址转换就难以处理。例如:许多Internet协议和应用依赖于真正的端到端网络,在这种网络上,数据包要求能够完全不加修改地从源地址发送到目的地址。比如,IP安全架构不能被NAT设备使用,因为包含原始IP源地址的原始包头采用了数据签名。如果改变源地址的话,数据签名将不再有效。
(二)地址转换不能处理IP报头加密的情况。如果对IP报头进行了加密处理,地址转换也不能知道真实的IP报头内容,也就不能进行地址转换了。
(三)地址转换由于隐藏了内部主机地址,有时候会使网络的调试变得复杂。无法实现端到端的IP跟踪。◆
参考文献:
1、 《路由型与交换型互联网基础》郑璐 神州数码网络有限公司
2、 《创建高级路由型互联网》 郑璐 神州数码网络有限公司
3、 《创建高级路由型互联网实验指导》 郑璐 神州数码网络有限公司
作者单位:西北民族大学榆中校区计算机科学与信息工程学院