首页 理论教育NAT防火墙的类型及优缺点

NAT防火墙的类型及优缺点

【摘要】:NAT功能通常被集成到路由器、防火墙、ISDN路由器或者单独的NAT设备中。(二)NAT防火墙的类型NAT有3种类型:静态NAT、动态NAT和网络地址端口转换NAPT。根据不同需要,3种NAT方案各有利弊。(三)NAT防火墙的优缺点1.NAT技术的优点所有内部IP地址对外面的人来说都是隐藏的。此外,内部网络利用现在流传比较广泛的木马程序可以通过NAT进行外部连接,就像它可以穿过包过滤防火墙一样容易。

(一)NAT防火墙简介

网络地址转换(Network Address Translation,NAT)是一个Internet工程任务组(Internet Engineering Task Force,IETF)的标准中的一项技术,允许一个整体机构以一个公用IP地址出现在因特网上。顾名思义,它是一种把内部私有IP地址翻译成合法网络IP地址的技术。

简单地说,NAT就是在局域网内部网络中使用内部地址,而当内部节点要与外部网络进行通信时,就在网关处将内部地址替换成公用地址,从而保证内部计算机在外部公网上可以正常使用。NAT可以使多台计算机共享因特网的连接,这一功能很好地解决了公共IP地址紧缺的问题。通过这种方法,可以只申请一个合法IP地址,就把整个局域网中的计算机接入因特网。这时,NAT屏蔽了内部网络,所有内部网络计算机对于公共网络来说是不可见的,而内部网络计算机用户通常不会意识到NAT的存在。

NAT功能通常被集成到路由器、防火墙、ISDN路由器或者单独的NAT设备中。例如,Cisco路由器中已经加入了这一功能,网络管理员只需在路由器的IOS中设置NAT功能,就可以实现对内部网络的屏蔽。又如,防火墙将Web Server的内部地址192.168.1.1映射为外部地址202.96.23.11,外部访问202.96.23.11地址实际上就是访问内部地址192.168.1.1。

(二)NAT防火墙的类型

NAT有3种类型:静态NAT(Static NAT)、动态NAT(Pooled NAT)和网络地址端口转换NAPT(Port-Level NAT)。

静态NAT是设置起来最简单和最容易实现的一种,内部网络中的每个主机都被永久地映射成外部网络中的某个合法地址。而动态NAT则是在外部网络中定义了一系列的合法地址,采用动态分配的方法映射到内部网络。NAPT则是把内部地址映射到外部网络的一个IP地址的不同端口上。根据不同需要,3种NAT方案各有利弊。

动态NAT只是转换IP地址,它为每个内部的IP地址分配一个临时的外部IP地址,主要用于拨号,对于频繁的远程连接,也可以采用动态NAT。当远程用户连接上之后,动态NAT就会分配给它一个IP地址,当用户断开网络连接时,这个IP地址就会被释放而留待以后使用。

网络地址端口转换NAPT是人们比较熟悉的一种转换方式。NAPT普遍应用于接入设备中,它可以将中小型的网络隐藏在一个合法的IP地址后面。NAPT与动态NAT不同,它将内部连接映射到外部网络中的一个单独的IP地址上,同时在该地址上加上一个由NAT设备选定的TCP端口号

互联网中使用NAPT时,所有不同的信息流看起来好像来源于同一个IP地址。这个优点在小型办公室内非常实用,通过从ISP处申请的一个IP地址,将多个连接通过NAPT接入互联网。

(三)NAT防火墙的优缺点

1.NAT技术的优点

所有内部IP地址对外面的人来说都是隐藏的。因此,网络之外不可能通过指定IP地址的方式直接对网络内部的任何一台特定计算机发起攻击。

如果因为某种原因使公共IP地址资源比较短缺,NAT技术可以使整个内部网络共享一个IP地址。(www.chuimin.cn)

可以启用基本的包过滤防火墙安全机制,因为所有传入的数据包如果没有专门指定配置到NAT,那么就会被丢弃。内部网络的计算机就不可能直接访问外部网络。

2.NAT技术的缺点

NAT技术的缺点和包过滤防火墙的缺点类似,虽然可以保障内部网络的安全,但也存在一些类似的局限。

(1)不能处理嵌入式IP地址或端口

NAT设备不能翻译那些嵌入到应用数据部分的IP地址或端口信息,而只能翻译那种正常位于IP首部中的地址信息和位于TCP/UDP首部中的端口信息。由于对方会使用接收到的数据包中嵌入的地址和端口进行通信,这样就可能产生连接故障,如果通信双方使用的都是公网IP,则不会造成什么问题,但如果那个嵌入式地址和端口是内网的,显然连接就不可能成功。

(2)不能从公网访问内部网络服务

由于内网是私有IP,因此不能直接从公网访问内部网络服务,如Web服务。

(3)地址转换将增加交换延迟

所有进出网络的数据包都要经过NAT地址转换以后才能进行收发,从而不可避免地会导致数据交换的瓶颈。

(4)会导致某些应用程序无法正常运行

有些应用程序虽然是用A端口发送数据的,但要用B端口进行接收。不过,NAT设备在翻译时却不知道这一点,它仍然会建立一条针对A端口的映射,但当对方响应的数据要传给B端口时,NAT设备却找不到相关映射条目而会丢弃数据包。另外,一些P2P应用在NAT环境中无法建立连接。对于那些没有中间服务器的纯P2P应用(如电视会议、娱乐等),如果大家都位于NAT设备之后,双方是无法建立连接的。因为没有中间服务器的中转,NAT设备后的P2P程序在NAT设备上是不会有映射条目的,也就是说对方是不能向你发起一个连接的。现在已经有一种称为P2P NAT穿越的技术可以解决这个问题。

此外,内部网络利用现在流传比较广泛的木马程序可以通过NAT进行外部连接,就像它可以穿过包过滤防火墙一样容易。