登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

沙漠里de烟雨

原创分享,禁止转载

 
 
 

日志

 
 

NAT技术的浅析  

2011-02-13 12:59:58|  分类: 网络管理与应用 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

所谓NAT,即网络地址转换。对于NAT,相信对于从事网络工作的人来讲,是熟悉地不能再熟悉的了。这里,不会大家特讲NAT的工作原理,NAT技术产生的背景,而只讲讲一些相关的概念理解,以及在路由器中如何配置。相信经常接触这种傻瓜式路由器的网络工作者而言,对于如何在思科或华为交换机上配置,实现NAT转换并没有十成的把握,所以,本人在此略述一二,做到尽量条理明晰。好了,言归正传。

一、对NAT表中四种类型的地址理解

1)内部本地地址(Inside local address)

=> 指在一个企业或机构的网络内部分配给一台主机的IP地址,此地址为私有地址。如:192.168.1.5/24

2)内部全局地址(Inside global address)

=> 指设置在路由器等因特网接口设备上,用来代替一个或多个私有IP地址的公有地址,此地址在因特网上是唯一的(即路由器外网接口上配的地址)。如:210.22.15.68/26

3)外部本地地址(Outside local address)

=> 指因特网上的一个公有地址,该地址可能是因特网上的一台主机。

4)外部全局地址(Outside global address)

=> 指因特网上另一端网络内部的地址,一般是私有IP地址。如:192.168.10.56/24

一般情况下,外部本地地址与外部全局地址是同一个公有地址,因为一般的服务器是直接接入因特网的。如下图所示:

 

NAT技术浅析 - 漠雨 - 沙漠里de烟雨

 

然而,我个人认为,一般的服务器是架在一个内网的DMZ中,而非直接裸露在因特网下。所以,个人趋向下于下面的情况,如下所示:

 

NAT技术浅析 - 漠雨 - 沙漠里de烟雨

 

也许,如上面的所说,我们不难理解不同的IP有不同的定义(或说叫法),但当我们处在一个网络环境中,反过来指一个IP让我们来定义它的名字时,也许你并非就能直接回答出来,所以,有必要在下面用图示解析其中的涵义(此图示与其分析纯属个人分析而得出来的,并没有进行严格求证,如有不对之处,敬请留言),如下图所示:

 

NAT技术浅析 - 漠雨 - 沙漠里de烟雨

 

如上图所示,本地与全局之分是以NAT设备(一般为路由器)为分水岭,数据进入NAT设备的接口上的IP地址称为本地地址,流出NAT设备的主机接口上的IP地址则为全局地址。内部与外部之分则是以因特网为分水岭,进入因特网的接口上的IP为内部地址,流出因特网的接口上的IP为外部地址(注意,NAT设备上连接内网的接口地址[我们常称其为网关]不在定义之列)。由此可知,这些IP的定义均是以发起访问的主机为参照来定义的,此时,若以回应主机为参照,则先前的这些IP定义则正好相反。可知NAT表中的地址叫法上的区分是相对的。

二、NAT的优缺点:

优点:

1)节省公有地址;

2)隐藏内部网络详情。

缺点:

1)NAT的操作耗费设备资源,增加延时;

2)不能通过ping或trace来探测应用了NAT技术的路由器内部的局域网主机的连通性

3)某些应用可能无法穿越NAT,如应用L2TP协议建立的VPN在特殊情况下无法穿透NAT来建立连接。

其中NAT增加设备负荷与网络延时主要体现在:

NAT表占设备内存,(NAT操作)查询NAT表耗CPU,(NAT操作)地址转换也耗CPU。

针对于这种情况,如果条件允许的话,可以给路由器单独配置一个NAT处理模块,以减轻因大量主机同时上网给设备带来的负担。

三、动态NAT与静态NAT在路由器上的配置方法

1、动态NAT ==>>使用一个或有限几个公网IP地址为内部网络众多私有地址进行地址转换,即多对一地址复用。内网主机及应用之间的连接用随机产生的端口号来区分,此时,做映射时不能少了参数“overload”。

下面依原理图写下其配置步骤,原理图如下:

 

NAT技术浅析 - 漠雨 - 沙漠里de烟雨

 

步骤:

1)配置外网接口的NAT转换

R(config)#interface e1

R(config-if)#ip nat outside

2)配置内网接口的NAT转换

R(config)#interface e0

R(config-if)#ip nat inside

3)给整个路由器配ACL,指定可以上网的主机或主机群(网段)

R(config)#access-list  11  permit  192.168.10.0   0.0.0.255 (反掩码)

11  为ACL列表号,在此应用的是标准列表,故列表号最大不能大于99。

注意:如果是允许单个主机,则permit后直接接IP地址即可。

4)给整个路由器定义公网IP地址池

R(config)#ip nat pool  abc  210.23.15.67   210.23.15.69   netmask  255.255.255.0 (掩码)

abc 为定义地址池的池名。

5)给整个路由器定义内部IP与公网IP(地址池中IP)做映射

R(config)#ip nat  inside  source  list  11  pool  abc  overload(地址复用)

意思是指:NAT设备将从列表号为11的列表中将其所有允许连接外网的内网IP从名字为“abc”的地址池中选择公网地址并使用NAT技术的地址复用技术让列表11中的主机IP能访问外网。

6)指向外网的默认路由,即指定NAT出口

R(config)#ip route  0.0.0.0   0.0.0.0   210.23.15.65(下一跳IP地址)

所有做完后,还得指定NAT出口,如果ISP没有告诉我们它的这个IP,我们也可以直接用本NAT设备的外网接口替代,此时应该是:

R(config)#ip route  0.0.0.0   0.0.0.0  e1

 2、静态NAT==>>即一个内部IP地址与一个公网IP地址进行映射,这样的话,不会节省公网IP,这种情况只应用在特殊场合,如给一个内网服务器在出路由器时,独占性地使用一个对应的公网IP。这是在ISP给的公网IP足够多(有好几个)的话,可以这样做。由于公网IP极其宝贵,有时,ISP只给我们一个IP地址,假设为:210.23.15.70,在这种情况下(对于小企业来讲这样的情况经常遇到),我们内部的服务器还得发布出去,方法就是将此服务器如同其它PC机一样,一起应用动态NAT,然后在服务器上更改主机名为域名形式,如:主机名为:door,域名后缀为:bestonetech.com(一般一个企业都有一个属于自己的企业网站,企业网站有一个除www之外的域名,我们就可以用这个域名,如公司网站为www.bestonetech.com,则我们可以用bestonetech.com),然后修改此服务器上的host文件,添加一条记录:door.bestonetech.com   210.23.15.70 ,最后在此域名的管理后台中添加A记录:door.bestonetech.com与ISP给的那个公网IP进行DNS解析的绑定。言归正传。

静态NAT与动态NAT的配置方法步骤基本一样,但有些小区别,如下:

1)配置外网接口的NAT转换

R(config)#interface e1

R(config-if)#ip nat outside

2)配置内网接口的NAT转换

R(config)#interface e0

R(config-if)#ip nat inside

3)作静态映射

R(config)#ip nat  inside  source static 192.168.10.5  210.23.15.70(独占的外网IP)

4)指向外网的默认路由,即指定NAT出口

R(config)#ip route  0.0.0.0   0.0.0.0   210.23.15.65(下一跳IP地址)

 

监测命令:

监测NAT表状态:show  ip  nat  translations

清空NAT表:clear  ip  nat  translations  * (“*”号代表整个NAT表中的所有条目)

  评论这张
 
阅读(1547)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018