• 测试技术
  • 博客
  • 视频
  • 开源
  • 论坛
  • 沙龙
  • 下载
  • 杂志
  • 招聘

字号: | 推荐给好友 上一篇 | 下一篇

什么是NAT--网络地址转换

发布: 2008-5-08 12:43 | 作者: 网络转载 | 来源: 网络转载 | 查看: 729次 | 进入软件测试时代论坛讨论

软件测试时代

NAT——网络地址转换,是通过将专用网络地址(如企业内部网Intranet)转换为公用地址(如互联网Internet),从而对外隐藏了内部管理IP地址。这样,通过在内部使用非注册的IP地址,并将它们转换为一小部分外部注册的IP地址,从而减少了IP地址注册的费用以及节省了目前越来越缺乏的地址空间(即IPV4)。同时,这也隐藏了内部网络结构,从而降低了内部网络受到攻击的风险。

NAT功能通常被集成到路由器、防火墙、单独的NAT设备中,当然,现在比较流行的操作系统或其他软件(主要是代理软件,如WINROUTE),大多也有着NAT的功能。NAT设备(或软件)维护一个状态表,用来把内部网络的私有IP地址映射到外部网络的合法IP地址上去。每个包在NAT设备(或软件)中都被翻译成正确的IP地址发往下一级。与普通路由器不同的是,NAT设备实际上对包头进行修改,将内部网络的源地址变为NAT设备自己的外部网络地址,而普通路由器仅在将数据包转发到目的地前读取源地址和目的地址。

NAT分为三种类型:静态NAT(staticNAT)、NAT池(pooledNAT)和端口NAT(PAT)。其中静态NAT将内部网络中的每个主机都被永久映射成外部网络中的某个合法的地址,而NAT池则是在外部网络中定义了一系列的合法地址,采用动态分配的方法映射到内部网络,端口NAT则是把内部地址映射到外部网络的一个IP地址的不同端口上。

  废话说了不少,让我们转入正题,看一下如何利用NAT保护内部网络。

使用网络地址转换NAT,使得外部网络对内部网络的不可视,从而降低了外部网络对内部网络攻击的风险性。

在我们将内部网络的服务使用端口映射到NAT设备(或是软件)上时,NAT设备看起来就像一样对外提供服务器一台服务器一样(如图一)。这样对于攻击者来讲,具有一定的难度,首先他要攻破NAT设备,再根据NAT设备连接到内部网络进行破坏。

图一

由图一我们可以看出,内部网络中的A、B和C提供相应的MAIL、FTP和HTTP服务。我们利用NAT将所提供服务机器的对应的服务端口25、110、20、21和80映射到NAT服务器上(IP:88.88.88.88,域名:5imax.net上,其中端口及服务对应如下:

SMTP<->25

POP3<->110

FTP<->20,21

HTTP<->80

说到20,我来加一个小插曲。我们都知道FTP对应的端口应该是21,为什么又冒出来一个20呢?其实,我们们进行FTP文件传输中,客户端首先连接到FTP服务器的21端口,进行用户的认证,认证成功后,当我们要传输文件时,服务器会开一个端口为20来进行传输数据文件,也就是说,端口20才是真正传输所用到的端口,端口21只用于FTP的登陆认证。我们平常下载文件时,会遇到下载到99%时,文件不完成,不能成功的下载。其实是因为文件下载完毕后,还要在21端口再行进行用户认证,而我们下载文件的时间如果过长,客户机与服务器的21端口的连接会被服务器认为是超时连接而中断掉,就是这个原因。解决方法就是设置21端口的响应时间。

话题扯远了(别拿柿子、鸡蛋……扔我啊),我们继续我们的NAT吧。由图一为例,当外部访问者访问http://www.testage.net时,NAT会自动把请求提交到内部的192.168.0.102的80端口上,反之也一样,我们所收到的信息也是内部的192.168.0.102通过NAT来传输给外部访问者的。同样FTP及MAIL的服务也是如此。

其中的NAT既可以用操作系统和代理软件,又可以用路由器及NAT设备。下面我们用软件的方法来具体实现具体的NAT设置。

文章来源于软件测试时代 http://www.testage.net/

TAG: 网络 NAT 地址转换

31/3123>

软件测试时代开课信息
Google
关于我们 | 合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2007 TestAge(测试时代) 北京慧灵科技有限公司 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备05002925号
技术支持和业务联系:info@testage.com.cn 电话:010-51297073