搜档网
当前位置:搜档网 › NAT网络地址转换技术的应用与实现

NAT网络地址转换技术的应用与实现

NAT网络地址转换技术的应用与实现
NAT网络地址转换技术的应用与实现

编号:_______________

商丘科技职业学院

毕业论文

题目: NAT技术在网络中的应用与实现

系别计算机科学系

专业

学生姓名

成绩

指导教师

2011年 4月

商丘科技职业学院毕业论文

摘要

随着互联网的普及,IP地址缺乏问题日益恶化,为了缓解问题,在IP地址分配和保留IP地址方面提出了许多办法,甚至提出新一代的IPv6技术从根本上解决地址空间问题。但由于多方面的原因,NA T成为了事实上广泛使用的解决方法,是我们至今在互联网上没有使用完合法IPv4地址的真实原因。它主要思想是把本地的私有IP地址映射到公网的合法IP地址,以缓解可用IP地址空间的消耗。本课程设计主要对NAT技术进行系统分析,并举出一个应用实例,在网络模拟器中将其具体实现,深入了解其工作原理与数据包每次被修改的情况,了解技术存在的缺点。

关键词:IP地址分配保留IP地址 NAT

NAT技术在网络中的应用与实现

目录

绪论 (1)

第1章背景简述 (2)

1.1IP地址现状 (2)

1.2现存解决方案 (2)

第二章NAT技术分析 (3)

2.1NAT类型 (3)

2.2NAT术语 (4)

2.3NAT工作原理 (4)

第三章NAT的应用实例 (6)

3.1实例描述 (6)

3.2实例的设计方案 (7)

3.3实例的配置重点 (8)

3.4实例的分析 (10)

结束语 (12)

参考文献 (13)

商丘科技职业学院毕业论文

绪论

随着互联网的普及,接入网络的计算机数量增长非常迅速,目前使用的IPv4地址空间有限,可用的公网合法IP非常短缺。人们为了缓解日益恶化的地址缺乏问题,在IP地址的分配和保留IP地址方面采取了许多办法。现存的解决办法包括ISP方面对公网地址的动态分配与回收、使用DHCP动态分配与回收、可变长子网掩码(VLSM)[1]技术、无类域间路由(CIDR)技术,甚至提出新一代的IPv6[3]技术从根本上解决地址空间问题,但由于多方面的原因,IPv6到目前还没有得到普及,而网络地址转换(NA T)[2]技术的使用,是我们至今在互联网上没有使用完合法IPv4地址的真实原因。它主要思想是把本地的私有IP地址映射到公网的合法IP 地址,以缓解可用IP地址空间的消耗。虽然,它没有像IPv6那种从根本上解决问题,但在IPv6没有得到普及的今天,成为了事实上广泛使用的解决方法。

NAT技术在网络中的应用与实现

第1章背景简述

1.1 IP地址现状

众所周知,在电话通信中,电话用户是靠电话号码来识别的。同样,在网络中为了区别不同的计算机,也需要给计算机指定一个号码,这个号码就是“IP地址”。随着互联网的普及,一个明显的事实是:连接到网络中的人员和设备数量每时每刻都在增加。理论上说,IPv4的可用地址只有大约232个,实际上只有大约2亿5千万个地址能够给设备使用。大量的报告显示,在地球上大约有65亿人,超过10%的人连接到了Internet。这些统计数据让我们注意到一个令人担忧的现实情况:按照IPv4的容量,地球上的每个人甚至不能拥有一台计算机,IPv4正在面临着地址枯竭的危机。

针对这个问题,人们在IP地址的分配和保留IP地址方面做了许多工作和努力,来缓解日益恶化的地址缺乏问题。

1.2 现存解决方案

最常见动态解决的方法是,当合法用户需要接入Internet中时,ISP为他分配一个可用的IP地址,使他可以访问网络,当用户断开连接后,之前分配的IP地址,再由ISP收回,留待其他用户接入时,再把之前的IP地址分配给其他用户。另一个常见的动态解决方法是,通过DHCP服务器动态地为需要使用网络服务的主机提供自动的TCP/IP配置,在使用完后便把IP地址回收到地址池中,为其他需要的主机提供分配。

其他技术可以针对IP地址和子网掩码来提供解决方案。如可以使用可变长子网掩码(VLSM)技术,更好地利用IP地址中的每一个二进位,划分出包含更少主机位的子网络,高效分配IP地址(较少浪费),比有类IP地址提供了更多的灵活性。无类域间路由(CIDR)伴随着VLSM而使用,将从VLSM产生的无类的IP地址集中起来,汇聚为一个代表较大范围的单一路由表项,减少了路由器中路由表的条目,从而减轻路由器的负担。CIDR可看作子网划分的逆过程。子网划分

商丘科技职业学院毕业论文

时,从主机号部分借位,将其合并进网络部分;而在CIDR的超网中,则是将网络号部分的某些位合并进主机号部分。

IPv6的提出,让人们看到的希望,最称为是最终解决方案。IPv6提供了丰富的地址空间(3.4*1038)[4],实际上是IPv4地址长度的4倍,IPv6的优点还有其安全性、扩展性和高可用性。可惜的是,直到现今,要用户终端上IPv6还没能普及,这迫使人们寻找更实际的、针对IPv4的技术。

NA T技术的使用,是我们至今在互联网上没有使用完合法IPv4地址的真实原因。NA T包括三种类型,分别是静态NAT、动态NAT和端口复用NA T(即PAT)。它主要思想是把本地的私有IP地址映射到公网的合法IP地址,以缓解可用IP地址空间的消耗。虽然,它没有像IPv6那种从根本上解决问题,但在IPv6没有得到普及的今天,成为了事实上广泛使用的解决方法。

第二章NAT技术分析

2.1NAT类型

NA T,全称网络地址转换,分为三种类型:静态NAT、动态NAT和端口复用NA T(称PAT)[5]。

静态NAT,是为了在私有IP地址和公网的合法IP地址之间允许一对一映射而设计的。这种类型需要网络中的每台主机都拥有一个真实的Internet IP地址,适合内网中的服务器使用,因为服务器要向外部网络提供网络服务,IP地址不能总是动态地改变。

动态NA T可以实现映射一个私有IP地址到公网合法IP地址池中的其中一个IP。这种类型不必像静态NA T那样,在路由器上静态映射内部到外部的地址,但是必须保证拥有足够的真实IP,保证每个在Internet中收发包的用户都有真实的IP 地址可用。

端口复用NA T,又称PA T,是最流行NAT配置类型。复用实际上是动态NAT 的一种形式,它映射多个私有IP地址到单独一个公网合法IP地址,形成多对一的关系,实现方式便是通过使用不同的端口。因此,它又被称为端口地址映射(PA T)。

NAT技术在网络中的应用与实现

通过使用PA T,可实现上千个用户仅通过一个真实的公网IP地址连接到Internet,而也因为这个原因,使用PA T是人们至今在互联网上没有使用完公网合法IP地址的真实原因。

2.2NAT术语

在NA T转换之前的地址叫做本地地址。因此,内部本地地址实际上是指尝试连接到Internet的主机的私有IP地址,而外部本地地址则是目标主机的地址。目标主机通常是服务器或网页的公网IP地址。在NA T转换之后使用的地址叫做全局地址。它们通常是使用公网合法IP地址,但如果不需要连接Internet,则不一定需要公网IP地址了。在转换之后,内部本地地址变成了内部全局地址。表3-1列出了这些术语的清晰含义:

表3-1 NA T术语

名字含义

内部本地转换之前的内部源地址

外部本地转换之前的目标地址

内部全局转换之后的内部源地址

外部全局转换之后的目标地址

2.3NAT工作原理

下面通过例子说明NA T详细工作原理。如图3-1所示,主机10.1.1.1需要访问外部网络Internet中的服务器,它发送一个数据包到边界路由器,该数据包的源地址为10.1.1.1。NA T转换发生在边界路由器中,该路由器识别出此数据包中的源地址为内部本地IP地址,目标是外部网络,它便把内部本地地址转换为内部全局地址172.168.2.2,并把转换结果记录到NA T表中。这个数据包使用转换后的新的源地址被发送到路由器的外出接口,然后被送达服务器。当外部的服务器产生响应数据包并回送到路由器时,路由器再使用NA T转换表,把内部全局地址转换为内部本地地址,然后再修改数据包的目的IP地址,然后送回发出请求的源主机

商丘科技职业学院毕业论文

10.1.1.1。

SA 172.168.2.2

DA

10.1.1.110.1.1.310.1.1.2

10.1.1.1SA

10.1.1.1

DA

172.168.2.2

图3-1 基本的NA T 转换示例

而在PA T 转换中,情况有些复杂,因为使用到了端口号,而所谓复用,是全部的内部主机被转换成一个单独的IP 地址。如图3-2所示,边界路由器同样把内部本地地址转换为内部全局地址,所不同的是每个转换都带上了端口号。端口号作用于传输层,加上端口号便可帮助路由器识别哪一台主机接收返回的流量。内部主机10.1.1.1请求外部服务器63.40.7.3的资源,发送的请求数据包在路由器处被修改,转换成一个公网IP 与随机端口号的组合,并纪录在NA T 转换表中。当外部服务器返回响应数据包到路由器时,虽然内部全局IP 地址都相同,但可以根据所分配的端口号来识别源主机,从而把返回的流量送往请求服务的源内部主机。静态与动态NA T 都是使用IP 地址识别源主机,由于PAT 允许使用传输层的端口号来识别主机,便可以更加节省公网的合法IP 地址。

NAT 技术在网络中的应用与实现

SA 172.168.2.2DA

10.1.1.110.1.1.310.1.1.210.1.1.1SA

10.1.1.1

DA

172.168.2.2

63.41.7.3

63.40.7.3

DA

172.168.2.2

图3-2 PA T 转换示例

第三章 NAT 的应用实例

3.1 实例描述

GNS 3是一款优秀的开源的具有图形化界面的网络模拟软件,适用于多种操作系统。它可以用于运行Cisco 的网络操作系统IOS ,或者是检验将要在真实的路由器上部署实施的相关配置。同时它也可以仿真一个网络的性能。简单说来它是Dynamips 的一个图形前端,而Dynamips 则是直接运行IOS 来模拟Cisco 的路由器,通过利用本地网卡,可虚拟出多个虚拟网上来模拟PC 等设备的网络连接。故本课程设计使用GNS 3来模拟一个NAT 的应用实例,使用Cisco 的3600系列路由器来进行NA T 转换。实例在GNS 3软件中的网络拓扑图如图4-1所示,加上了适当的备注。

商丘科技职业学院毕业论文

图4-1 实例网络拓扑图

本实例中内网中在主机pc1、pc2和内部Web服务器,需要达到的目标是pc1和pc2需要通过Internet访问外部Web服务器,而外部主机则需要访问内网中的内部Web服务器。而现有的ISP分配的可用地址只有两个:202.100.100.1/24和202.100.100.2/24。

3.2 实例的设计方案

内网中使用的是A类的私有IP地址,而私有IP地址是不能在公网是被路由的,所以要达到实例的预期目标,必须在边界路由器处对私有IP地址进行NA T转换,方可获取网络服务。然而NAT有三种类型,下一步就应该确定所使用NAT 的类型。

pc1和pc2只需要访问外部Web服务器,无其他特别要求,三种类型都能适合要求,然而内部Web服务器的要求则不一样。外部主机需要可以访问到内部Web 服务器,这就决定了内部Web服务器必须随时拥有一个公网的合法IP,才能使外部主机可以随时访问。若内部Web服务器使用动态NAT和PAT来配置,在任意一个时刻内,外部主机根本无法知道内部Web服务器使用的地址与端口号,也就无法进行访问了。因此,内部Web服务器需要使用静态NAT的转换,来保证任意时刻都能为外部主机提供服务。内部Web服务器的静态NA T转换需要分配一个公网IP地址,不妨就定为202.100.100.2/24,现在只剩下一个公网IP地址可用了。

NAT技术在网络中的应用与实现

若pc1和pc2只使用动态NAT,在任意一个时刻,只有其中一台主机可访问外部网络服务,但如果使用PA T,便可以令两台主机同时访问外部网络而不想到干扰。综上所述,内部Web服务器应该使用静态NA T配置,而pc1和pc2则使用PAT配置,两个公网IP地址202.100.100.1/24和202.100.100.2/24刚好都被利用到。

3.3 实例的配置重点

上面已经分析与设计出实例的配置方案,下面需要做的则是在模拟器上进行配置与运行,测试设计方案是否可行。

在路由器上的各端口的IP地址规划与NA T端口角色如下:

(1)F1/0是内部端口:10.0.1.100/24。

(2)F2/0是内部端口:10.0.0.200/24。

(3)F0/0是外部端口:202.100.100.1/24。

在本规划中,路由器的出口F0/0必须配置成公网IP地址,原因是,内部地址在路由器中被转换成公网IP地址,而外部的服务器与主机根本不知道这一过程,它们只知道与自己通信的源IP地址为202.100.100.1/24和202.100.100.2/24,若不在F0/0上配置两个公网IP地址,外部服务器和外部主机所发的数据包无法到达路由器,也就无法达到实例的通信目标。

首先进行静态NA T的相关配置。在模拟器中登入路由器的控制台,可进行所有功能配置。第一步对内部端口F2/0进行相关的配置如图4-2所示:

图4-2 端口F2/0的配置

第二步在全局配置模式下建立静态NA T的映射,如图4-3所示:

商丘科技职业学院毕业论文

图4-3 建立静态NA T映射

第三步便要对外部端口F0/0进行相关的配置,如图4-4所示:

图4-4 端口F0/0的配置

然后进行PA T的配置。第一步先对内部端口F1/0进行相关的配置如图4-5所示:

图4-5 端口F1/0的配置

第二步全局配置模式下建立PA T的映射,这与建立静态NAT的映射不一样,需要建立一个访问控制列表(ACL)、一个地址池(尽管只有一个IP地址),并把两者联系起来,如图4-6所示:

图4-6 建立PA T映射

NAT技术在网络中的应用与实现

第三步便要再一次对外部端口F0/0进行相关的配置,但上面静态NAT转换中已经做了,所以可以省略。

命令ip nat inside source list 1 pool pcs overload告诉路由器把匹配access-list 1的IP地址转换成名字叫pcs的IP NA T地址池中的地址,而由于地址池中只有一个地址并在命令末尾带上了“overload”关键字,所以会用相同的IP、不同的端口号进行网络地址转换。

3.4 实例的分析

下面对实例中的路由器中各端口可能出现的数据包进行分析。

当pc1和pc2同时(或较短时间间隔)访问或ping外网的Web服务器时,所发送的数据包会在路由器中被修改源地址,并记录在NA T转换表中,如表4-1所示:

表4-1 PA T转换条目

协议类型内部本地

IP地址:端口

内部全局

IP地址:端口

目的地址

IP地址:端口

TCP TCP 10.0.1.1:1234

10.0.1.2:1570

202.100.100.1:1024

202.100.100.1:1750

202.0.0.1:80

202.0.0.1:80

当外部的Web服务器对pc1和pc2访问作出响应,返回包含服务的数据包时,目的地址将是202.100.100.1。路由器将返回的数据包对比转换表,根据端口号来识别pc1和pc2,然后根据结果返回相应的内网主机。

当外部主机请求内网中的Web服务器的服务时,会使用NA T转换后的合法公网IP地址,而路由器中会在配置完成后便一直保留一条静态NA T转换的条目,如表4-2所示:

表4-2 静态NA T转换条目

内部本地IP地址内部全局IP地址

10.0.0.1 202.100.100.2

由于静态条目一直存在,所以每次外部主机访问202.100.100.2这个地址时,都会被路由器进行转换,然后再转发到内部Web服务器;当内网中的Web服务器对外

商丘科技职业学院毕业论文

部主机的访问作出响应,回发的数据包进入路由器时,被根据静态转换条目修改源IP地址。这样,在任意时刻都可以对外部主机提供Web服务。

至此,实例的NA T设计方案基本上符合通信要求。并且由于每次都由路由器进行数据包的IP转换,赶到一定的安全保护作用,但这也揭露出NA T技术的缺点。由于每次都需要路由器对数据包进行转换,而路由器的工作原理是依靠基于CPU 与内存计算的软件,并不像交换机基于硬件芯片那样的高性能,故随着路由器的负载增加,NA T的转换时间和数据包时延会迅速增大。考虑到这样的情况下,路由器便成为了网络性能的瓶颈,存在单点失效问题。故实际中使用NA T技术需要非常注意路由器的性能和转换的条目数量,避免路由器崩溃。

NAT技术在网络中的应用与实现

结束语

掌握到实际网络中NA T技术的一般配置方法,了解到网络IP分配地址相关知识,也深入认识到NA T的工作原理与使用优缺点。从NAT实例的设计中,使我认识到一个人的想法很多时候会存在不足与缺点,一个思路成型之前需要反复考虑与推敲,要全面地考虑各种各样问题,才能作出较全面的解决方案。在基本完成本设计后,本人反复思考,觉得自己对NA T技术与实例的分析不一定到位,于是到图书馆和互联网作了资料搜集与知识补充,最后作出了一定的修改。本人的感想是,不要以解决了小的问题而自满,应该想的更深更远,在思考问题之时,不应该固步自封,应该先了解别人思考的优点,再结合自身的知识来全面思虑,才能培养和提高自身的动手实践能力。

本课程设计可能因为本人经验欠缺,做得不太出众,但通过课程设计所学习到的知识与所得到的实践机会令本人受益匪浅,进一步培养了实践结合理论知识的能力。

商丘科技职业学院毕业论文

参考文献

[1] 易建勋. 计算机网络设计[M]. 北京:人民邮电出版社,2009

[2] 蔡学军,梁广民,王隆杰,张立娟. 网络互联技术[M]. 北京:高等教育出版社,2007

[3] 沈海娟. 网络互联技术—广域网[M]. 北京:浙江大学出版社,2006

[4] Todd Lammle. 程代伟,徐宏等译. CCNA学习指南[M]. 北京:电子工业出版社,2008

[5] Doyle Jeff,Carroll J.D. 夏俊杰译. TCP/IP 路由技术(第二卷)[M]. 北京:人民邮电出版社,2009

相关主题