一、NAT 基础知识
1. NAT定义
NAT英文全称是"Network Address Translation","网络地址转换",它是一个IETF(Internet Engineering Task Force, Internet工程任务组)标准,允许一个整体机构以一个公用IP(Internet Protocol)地址出现在Internet上。顾名思义,它是一种把内部私有网络地址(IP地址)翻译成合法网络IP地址的技术。图1给出了NAT的一个简单实现。
2. NAT技术的提出
IP地址耗尽促成了CIDR的开发,但CIDR开发的主要目的是为了有效的使用现有的internet地址。而同时根据RFC 1631(IP Network Address Translator)开发的NAT却可以在多重的互联网子网中使用相同的IP,用来减少注册IP地址的使用。 NAT技术使得一个私有网络可以通过互联网注册IP连接到外部世界,位于内部网络和外部网络中的NAT路由器在发送数据包之前,负责把内部IP翻译成外部合法地址。内部网络的主机不可能同时于外部网络通信,所以只有一部分内部地址需要翻译。
数据包中如果包含有目的IP 地址,一旦内部Intranet 的IP 地址被截获,那么内部网络资源就会暴露,并可以对其实施攻击。为了更好地提高内部网络安全性,可以采用网络地址转换技术。另外,IP 地址的不足使许多用户使用私有EP 地址来搭建网络,私有网络中的IP 地址应遵循RFC 1597 中为私有网络分配的地址,其地址范围为
10.0.0.0-10.255.255.255 , 172.16.0.0--172.16.255.255 192.168.0.0--192.168.255.255 |
3. NAT工作原理
NAT的基本工作原理是,当私有网主机和公共网主机通信的IP包经过NAT网关时,将IP包中的源IP或目的IP在私有IP和NAT的公共IP之间进行转换。通过NAT路由器的所有出分组,都把分组中的源地址更换为全球NAT地址。通过NAT路由器的所有入分组,都把分组中的目的地址(这个NAT路由器的全球地址)更换为适当的专用地址。如图2所示给出了地址转换的示例。
图2 NAT工作原理图
4. NAT的实现方法和分类
NAT 功能通常被集成到路由器、防火墙、ISDN路由器或者单独的NAT设备中。比如Cisco路由器中已经加入这一功能,网络管理员只需在路由器的IOS中设 置NAT功能,就可以实现对内部网络的屏蔽。,其他如Linux中的IP伪装(IP Masquerade),Solaris中的ipfilter或Windows98的Sygate软件和Windows 2000 、2003都包含了这一功能。NAT分类:
(1) 源NAT(Source NAT,SNAT):修改数据包的源地址。源NAT改变第一个数据包的来源地址,它永远会在数据包发送到网络之前完成,数据包伪装就是一具SNAT的例子。
(2) 目的NAT(Destination NAT,DNAT):修改数据包的目的地址。Destination NAT刚好与SNAT相反,它是改变第一个数据懈的目的地地址,如平衡负载、端口转发和透明代理就是属于DNAT。
5. NAT的转换表
NAT路由器怎样知道从Internet来的入分组的目的地址呢?可能有几百个或几千个专用IP地址,每一个都属于一个特定主机。如果NAT路由器有一个转换表,问题就解决了。最简单的形式是一个转换表只有两列:专用地址和外部地址(分组的目的地址)。当这个路由器对出分组的源地址进行转换时,它也记下来目的地址———这个分组要去的地方。当响应从这个目的地址返回时,路由器就使用这个分组的源地址(作为外部地址)来找出这个分组的专用地址。图3给出了这个概念。应当注意,改变的(被转换的)地址用灰色表示。
图3 NAT的转换表
6.NAT的优点和缺陷:
NAT方案在一定程度上减缓了IP地址耗尽的周期和路由表规模越来越大的问题,提供了一种非常方便的方式来解决私有网络与Internet的互连问题。
NAT的优点:
终端用户可以透明地访问Internet。
利用NAT可以做到对外部网络隐藏内部网络的体系结构,从外部网络无法知道究竟是哪台主机发送或接收数据,从另一个角度,它也是一个缺点。
为已建成的私有网络方便地建立与Internet的连接,而不必去修改每台主机的地址以及内部路由器的配置。
*在实现NAT时,可以加入一些服务器代理和包过滤的功能,可以获得很好的安全性及其它性能,而不用增加管理的开销。
以极少的全局地址实现一个较大型的私有网络与Internet的互连。
但NAT方案含有很多消极特征,决定了它只能是一个临时的解决方案,包括:
如果网络规模增大,访问Internet的主机增多,地址对应表的规模必然会越来越大,这将导致效率的降低。
它会增加错误寻址的可能性。
它隐藏了发送报文的主机的有关信息,使得外部网络难于对它们进行管理,例如,若内部网络中某台主机在Internet上违反安全规则,Inter—net就无法查处"元凶"。
由于NAT要修改相应的IP地址,这使得不能对包含IP地址或有关IP地址信息的内容(如
TCP报文头的校验和)进行加密,降低了安全性。
l那些使用到IP地址的高层应用将受到限制,除非NAT有可能修改其中包含的IP地址信息,即便如此,对这些高层应用还是有所限制,如不能加密等。
*ICMP,SNMP,DNS等等各种网络上使用的协议在进行地址翻译时所带来的问题,难予考虑周全。
二、NAT在Solaris 下的实现原理
NAT在Solaris 下的实现原理也是使用防火墙工具IPFilter是目前比较流行的包过滤防火墙软件,它目前拥有多种平台的版本,安装配置相对比较简单。可以用它来构建功能强大的软件防火墙,下面就其的安装以及一些典型的配置作一下说明。IPFfilter 的作者是 Darren Reed 先生,他是一位致力于开源软件开发的高级程序员,目前工作于 SUN 公司。IP Filter 软件可以提供网络地址转换(NAT)或者防火墙服务。简单的说就是一个软件的防火墙,并且这个软件是开源免费的。当前的版本是4.1.15,目前支持 FreeBSD、NetBSD、Solaris 10、Open Solaris、AIX 等操作系统平台。IPFilter是它是一个在引导时配置的可加载到内核的模块。这使得它十分安全,因为已不能由用户应用程序篡改。我用Solaris10 来作为实验的平台介绍一下IP Filter。IP Filter过滤器会执行一系列步骤。图4说明处理包的步骤,以及过滤如何与 TCP/IP 协议栈集成在一起。
图4 处理数据包的步骤
数据包在Solaris内的处理顺序包括下列步骤:
1. 网络地址转换 (Network Address Translation, NAT) :将专用 IP 地址转换为不同的公共地址,或者将多个专用地址的别名指定为单个公共地址。当组织具有现有的网络并需要访问 Internet 时,通过 NAT,该组织可解决 IP 地址用尽的问题。
2. IP 记帐:可以分别设置输入规则和输出规则,从而记录所通过的字节数。每次与规则匹配时,都会将包的字节计数添加到该规则中,并允许收集层叠统计信息。
3. 片段高速缓存检查:如果当前流量中的下一个包是片段,而且允许前一个包通过,则也将允许包片段通过,从而绕过状态表和规则检查。
4. 包状态检查:如果规则中包括 keep state,则会自动传递或阻止指定会话中的所有包,具体取决于规则指明了 pass 还是 block。
5. 防火墙检查:可以分别设置输入规则和输出规则,确定是否允许包通过 Solaris IP 过滤器传入内核的 TCP/IP 例程或者传出到网络上。
6. 组:通过分组可以按树的形式编写规则集。
7. 功能:功能是指要执行的操作。可能的功能包括 block、pass、literal 和 send ICMP response。
8.
关键词标签:攻略,配置,地址,IP,NA
相关阅读
热门文章 路由器地址大全-各品牌路由设置地址各品牌的ADSL与路由器出厂默认IP、帐号、密Nslookup命令详解-域名DNS诊断站长装备:十大网站管理员服务器工具软件
人气排行 各品牌的ADSL与路由器出厂默认IP、帐号、密码路由器地址大全-各品牌路由设置地址腾达路由器怎么设置?腾达路由器设置教程ADSL双线负载均衡设置详细图文教程路由表说明(详解route print)网管员实际工作的一天用此方法让2M带宽下载速度达到250K/S左右网管必会!了解交换机控制端口流量
查看所有0条评论>>