基于NAT技术的路由安全问题的探讨

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于NAT技术的路由安全问题的探讨
摘要:NAT(网络地址转换)技术是目前计算机网络方向的一项重要的安全技术,采用此技术可以解决IP地址紧缺的问题,同时,也能将内部网络和外部网络隔离,为网络提供一定的安全保障。

本文阐述了地址转换技术的概念、基本类型、基本原理及环境配置;探讨了路由器的安全与可靠的问题;并进一步探讨NAT技术应用在路由器上,解决路由安全问题的表现,采用了NAT技术功能中的NAPT(网络地址端口转换)技术,提供了将私有网络地址接入公共网络的网络方案和实现的方法,并针对国内目前中小企业网络的特点,结合NAT技术解决了其网络管理和网络安全问题,给出了一个将NAT技术应用于公司网络的实例。

关键词:网络地址转换;路由器;内外端口
1 引言
随着Internet的迅速发展,中国的网民也越来越多,连接到Internet的主机数量呈几何趋势增长。

IPV4协议32位的地址空间的设计已不能满足众多用户的需要,所以IP地址短缺的问题就成为当下亟待解决的一个难题,为此人们提出了很多解决的方案,但目前比较成熟的是NAT技术,英文全称是“Network Address Translation”,中文意思是“网络地址转换”,它是一个IETF(Internet Engineering Task Force, Internet工程任务组)标准,允许一个整体机构以一个公用IP地址出现在Internet上。

网络为人们提供了极大的便利。

但随着网络应用的日益普及,网络安全成为必需面对的一个实际问题。

网络安全包括两层含义:其一是内部局域网的安全,其二是外部数据交换的安全。

路由器作为内部网络和外部网络之间通信的关键设备,有必要提供充分的安全保护功能[3]。

NAT技术提供了一种完全将私有网和公共网隔离的方法,逐渐成为一项网络安全技术,得到了广泛的应用和认可。

本文主要是通过研究NAT技术的工作原理及其特点,分析并列举出目前有关路由安全的问题,并结合实例,阐述了基于NAT技术在路由安全方面得到的应用。

2 NAT技术的定义
NAT(Network Address Translation,网络地址转换)是一个IETF(工程任务组)标准,用于将一个地址域映射到另一个地址域的标准方法。

NAT将每个局域网节点的内部私有地址转换成一个公网上合法的IP 地址,反之亦然。

它也可以应用到防火墙技术里,把个别IP地址隐藏起来不被外界发现,使外界无法直接访问内部网络设备,同时,它还帮助网络可以超越地址的限制,合理地安排网络中的公有Internet地址和私有IP地址的使用[1]。

3 NAT 技术的原理及环境
3.1 NAT 技术的基本原理
NAT 技术是用于将一个地址域映射或翻译到另一个地址域的标准方法。

NAT 技术使得采用保留地址或非注册地址的网络可以通过注册的地址连接到外部世界,NAT 功能通常被集成到路由器、防火墙、ISDN (综合业务数字网)路由器或者单独的NAT 设备中,位于内部网络和外部网络中的NAT 设备在发送数据包之前,负责把内部非注册地址翻译成注册地址,其中在路由器的实现方式如图1所示。

内部本地地址(Inside local address )是分配给内部网络中的计算机的内部IP 地址,内部合法地址(Inside global address )是对外进行IP 通信时,代表一个或多个内部本地地址的合法IP ,内部机器在向外界发送的IP 地址都会被替换成合法被注册的正确IP 地址,虽然这样处理会给处理器带来一定的负担,但对于一般网络来说这种负担都属于可接受范围。

s
图1 NAT 技术在路由器中的实现方式
现代企业一般在两种情况下使用NAT 技术,一种是利用NAT 将内部网络与外部Internet 隔离开,使外部网络用户无法获悉企业内部的网络结构,从而外部用户无法获知通过NAT 设置的内部IP 地址。

另一种是因为企业申请的合法外网IP 地址太少无法满足内部网络用户的要求,通过NAT 的功能实现多个用户同时公用一个合法IP 与外部进行通信。

网内用户
网内用户
网内用户
交换机 路由器
防火墙
IP 转换
inside
outside
3.2 NAT环境配置
由图1可以看出,网内的用户一般通过交换机构建局域网,然后通过路由与外网进行数据交换,设置NAT功能的路由器至少要一个内部端口(inside)以及一个外部端口(outside),路由器负责在NAT表中登记内网用户的IP信息。

内部端口连接的网络用户可自由分配内部的IP地址,内部端口可以为任意一个路由器端口。

外部端口连接的是外部网络,如Internet等,外部端口可以为路由器上的任意端口。

设置路由器的ISO应支持NAT功能,其IOS一般采用11以上版本[2]。

4 NAT的基本类型
4.1静态转换(Static NAT)
静态地址转换将内部本地地址与内部合法地址进行一对一的转换,且需要指定和哪个合法地址进行转换。

如果内部网络有Email服务器或FTP服务器等可以为外部用户提供的服务,这些服务器的端口地址必须采用静态地址转换,以便外部用户可以使用这些服务[1]。

静态地址转换基本配置步骤:
(1)在内部本地地址与内部合法地址之间建立静态地址转换。

在全局设置状态下输入
Ip nat inside source static内部本地地址内部合法地址
(2)指定连接网络的内部端口。

在端口设置状态下输入
Ip nat inside
(3)指定连接外部网络的外部端口。

在端口设置状态下输入
Ip nat outside
静态NAT是最为简单和容易的实现方法。

如采用以下语句:
Ip nat inside source static 172.18.7.51 61.167.6.2
则表示将局域网中172.18.7.51永久的映射为全局合法IP 61.167.6.2。

4.2动态转换(Pooled NAT)
动态地址转换也是将本地地址与内部合法地址一对一地转换,但是动态地址转换是从内部合法地址池中动态地选择一个未使用的地址对内部本地地址进行转换[1]。

动态地址转换基本配置步骤:
(1)在全局设置模式下,定义内部合法地址池。

格式为
Ip nat pool地址池名称起始IP地址终止IP地址子网掩码 (其中地址池名称可以任意设定。

)
(2)在全局设置模式下,定义一个标准的access-list规则以允许哪些内部地址可以进行动态地址转
换。

格式为
access-1ist标号permit源地址通配符 (其中标号为1~99之间的整数。

)
(3)在全局设置模式下,将由access-1ist指定的内部本地地址与指定的内部合法地址池进行地址转
换。

格式为
Ip nat inside source list访问列表标号 pool内部合法地址池名字
(4)指定与内部网络相连的内部端口在端口设置状态下,格式为
Ip nat inside
(5)指定与外部网络相连的外部端口,格式为
Ip nat outside
如采用如下语句:
Ip access-list standard 1 permit 172.18.7.0 255.255.255.0 //局域网中内部局部地址的配置Ip nat pool DCR 61.167.6.3 61.167.6.4 255.255.255.252 //局域网中NAT池的配置
Ip nat inside source list 1 pool DCR overload //地址超载的配置
表示如果局域网中有20台PC机,但向ISP只申请到61.167.6.3和61.167.6.4两个合法IP,通过如上配置,可实现所有的PC同时访问Internet,并使用了地址超载功能。

4.3网络地址端口转换NAPT(Port-Level NAT)
超载内部全局地址通过允许路由器为多个局部地址分配一个全局地址,也就是将多个局部地址映射为一个全局地址的某一端口,因此也被称为端口地址转换。

端口动态地址转换首先是一种动态地址转换,但是它可以允许多个内部本地地址共用一个内部合法地址。

只申请到少量IP地址但却经常同时有多于合法地址个数的用户上外部网络的情况,这种转换极为有用[1]。

端口动态地址转换配置步骤:
(1)在全局设置模式下,定义内部合地址池
Ip nat pool地址池名字起始IP地址终止IP地址子网掩码(其中地址池名字可以任意设定。

)
(2)在全局设置模式下,定义一个标准的access-1ist规则以允许哪些内部本地地址可以进行动态地
址转换。

access-1ist标号permit源地址通配符(其中标号为1~99之间的整数。

)
(3)在全局设置模式下,设置在内部的本地地址与内部合法IP地址间建立复用动态地址转换。

Ip nat inside source list访问列表标号 pool 内部合法地址池名字 overload
(4)在端口设置状态下,指定与内部网络相连的内部端口
Ip nat inside
(5)在端口设置状态下,指定与外部网络相连的外部端口
Ip nat outside
如采用如下语句:
static add port tcp 80 61.167.6.5
ip access-list standard 1
permit 172.18.7.0 255.255.255.0
ip nat inside source
list 1 interface Serial0/0 overload // 指定访问列表LIST 1 访问外网是转换成Serial0/0口IP地址
根据不同的需要,三种NAT方案各有利弊。

动态地址NAT只是转换IP地址,为每一个内部的IP地址分配一个临时的外部IP地址,主要应用于拨号以及频繁的远程连接。

网络地址端口转换NAPT是人们比较熟悉的一种转换方式。

NAPT普遍应用于接入设备中,可以将中小型的网络隐藏在一个合法IP地址后面,将内部连接映射到外部网络中的一个单独的IP地址上,同时在该地址上有NAT设备配置TCP端口号。

如果在Internet环境中使用NAPT,所有不同的TCP和UDP信息流看起来好像来源于同一个IP地址。

此优点在目前中小型办公室内非常实用,大大节约了IP资源。

虽然这样会导致一定的信道拥塞,但综合其使用费用和管理特点来说是中小型企业最佳的选择。

5 NAPT使用原理
在使用NAPT技术过程中,内外网的IP地址翻译过程如图2所示,网络地址转换一般有两种常用的方法。

图2 IP 地址翻译过程
5.1 内部源地址翻译
此方法主要用于提供内部非注册地址访问外部网络的环境,一般用于多台主机公用一个IP 与外界交互。

工作原理是在内网主机连接到外网第一个数据包到达NAT 设备时,NAT 设备就会查询NAT 表,看是否有相关回话记录,如果有相关记录,就会将内部IP 地址及端口同时进行转换,再转发出去;如果没有相关记录,NAT 设备进行IP 地址和端口转换的同时,还会在NAT 表增加一条该会话的记录,然后根据翻译的类型将数据包的内部IP (源地址)更换成内部全局地址,再转发出去;外部主机接收到数据包后用接收到的内部全局地址来响应;NAT 设备接受到外部回来的数据包后根据NAT 表把目的地址及端口转换成对应的内部IP 地址及端口,转发给相应内部主机[2]。

5.2 内部目的地址翻译
此方法主要用于将内部的多个地址映射到一个虚拟地址,让外部主机可以用一个虚拟地址的方式来访问内部提供的一个服务环境达到负载重分配。

工作原理是当外部主机向内部虚拟主机通讯时,NAT 设备接受外部主机的请求并依据NAT 表建立与内部某台真实主机的连接,即把内部全局地址翻译成内部局部某个地址,并转发该数据包到内部的该台主机,内部主机接受包并作出响应;如果NAT 设备此时收到其他连接,则会根据NAT 表将连接分配至另一个内部主机建立连接,并转发数据,直到轮到内部的最后一台主机后再从第一台主机循环[2]。

NA T 设备
外部网络
注册合法IP
内部网络
转换
6 路由器的安全与可靠问题
随着网络应用的日益普及,尤其是在一些敏感场合(如电子商务)的应用,网络安全成为日益迫切的需求。

网络安全包括两层含义:其一是内部局域网的安全,其二是外部数据交换的安全。

路由器作为内部网络与外部网络之间通信的关键设备,有必要提供充分的安全保护功能。

针对网络存在的各种安全隐患,安全路由器必须具有如下的安全特性:
(1)身份认证
路由器中的身份认证主要包括访问路由器时的身份认证;对端路由器的身份认证和路由信息的身份认证。

(2)信息隐藏
与对端通信时,不一定需要用真实身份进行通信。

通过地址转换,可以做到隐藏网内地址、只以公共地址的方式访问外部网络。

除了由内部网络首先发起的连接,网外用户不能通过地址转换直接访问网内资源。

(3)数据加密
通过对路由器所发送的报文进行加密,即使在Internet上进行传输,也能保证数据的私有性、完整性以及报文内容的真实性。

(4)攻击探测和防范
路由器作为一个内部网络对外的接口设备,是攻击者进入内部网络的第一个目标。

如果路由器不提供攻击检测和防范,则也是攻击者进入内部网络的一个桥梁。

在路由器上提供攻击检测,可以防止一部分的攻击。

(5)安全管理
内部网络与外部网络之间的每一个数据报文都会通过路由器,在路由器上进行报文的审计可以提供网络运行的必要信息,有助于分析网络的运行情况。

7 研究实例
一个企业不想让外部网络用户知道自己的网络内部结构,可以通过NAT将内部网络与外部Internet 隔离开,则外部网络用户根本不知道通过NAT设置的内部IP地址。

也可以有效的防止一些黑客对本企业的网络进行非法攻击,获取企业的重要信息,破坏传给企业的信息。

7.1 实例网络模型
图3 某企业网络图
7.2 通过cisco路由器实现基本NAT功能的步骤及方法[4]
Interface Ethernet0
ip address 202.201.243.253 255.255.252.0
no ip directed-broadcast
ip nat inside /*定义此为网络的内部端口*/
interface Serial0
ip address 192.1.1.1 255.255.255.252
no ip directed-broadcast
ip nat outside /*定义此为网络的外部端口*/
/*定义从chinanet-ISP那里申请到的IP在企业内部的分配策略*/
ip nat pool lan1 192.1.1.4 192.1.1.10 netmask 255.255.255.224
ip nat pool temp-lan 192.1.1.9 192.1.1.11 netmask 255.255.255.224
/*将访问列表与地址池对应,以下为动态地址转换*/
ip nat inside source list 1 pool lan1
/*将访问列表与地址池对应,以下为端口地址转换的两种方法*/
ip nat inside source list 2 pool temp-lan overload
ip nat inside source list 3 interface serial0 overload /*把局部地址转换成S0接口地址*/ /*将访问列表与地址池对应,以下为静态地址转换*/
ip nat inside source static 202.201.240.1 192.1.1.12 /*为webserver1做静态地址转换*/
ip nat inside source static 202.201.240.4 192.1.1.13/*为ftpserver 做静态地址转换*/
ip nat inside source static 202.201.240.5 192.1.1.14 /*为dnsserver做静态地址转换*/
ip nat inside source static 202.201.240.6 192.1.1.15 /*为mailserver做静态地址转换*/ 7.3 NAT技术应用于网络安全的实例
/*定义标准的access-list规则以允许哪些内部本地地址可以进行动态地址转换,分别定义是为了对应不同的地址池*/
定义标号为20的access-list,为了实现网络安全只允许企业内网中的202.201.241.0 202.201.242.0 202.201.241.128网段的信息可以自由进入,其他全部隔离在外网。

具体配置如下: access-list 20 permit 202.201.241.0 0.0.0.255
access-list 20 permit 202.201.242.0 0.0.0.128
access-list 20 permit 202.201.241.128 0.0.0.128
access-list 20 deny any
interface S0
ip access-group 20 in
因为企业内部202.201.240.4,202.201.240.5的信息是保密的,不允许随意被外界知道,因此除了它们其他均可与外网交换。

定义标号为30的access-list,为了实现网络安全,具体的配置如下:access-list 30 deny 202.201.240.4 0.0.0.255
access-list 30 deny 202.201.240.5 0.0.0.255
access-list 30 permit any
interface S0
ip access-group 30 out
8 结语
NAT技术可能对地址耗尽和路由表的规模扩大是一个很好的短期解决方案,是一个方便、廉价而且实用的方法,因为网络扩大时它需要很少的改变。

在当前网络中,NAT技术具有十分重要的现实意义。

本文系统的归纳了此项技术,并结合此项技术给出了NAT技术的应用实例,很好的解决了企业的网络调优以及
安全问题,完善了该项技术的价值。

参考文献
[1]斯桃枝. 路由与交换技术.北京大学出版社.2008.5
[2]秦添杨贯中. 基于路由器NAT技术的研究及应用. 2010
[3]刘欣王行建. NAT技术的研究与应用. 自动化技术与应用. 2008.7
[4]田生伟禹龙. NAT技术及其在企业网中的应用. 2002.8
- 10 -。

相关文档
最新文档