NAT技术与代理服务器

NAT技术:

网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。原因很简单,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。

基本网络地址转换(Basic NAT)是一种将一组 IP地址映射到另一组 IP 地址的技术,这对终端用户来说是透明的。网络地址端口转换(NAPT)是一种将群体网络地址及其对应 TCP/UDP 端口翻译成单个网络地址及其对应TCP/UDP端口的方法。这两种操作,即传统 NAT 提供了一种机制,将只有私有地址的内部领域连接到有全球唯一注册地址的外部领域。

NAT功能:
由于保密原因或 IP 在外网不合法,网络的内部 IP 地址无法在外部网络使用,就产生了 IP 地址转换的需求。局域网络以外的网络的拓扑结构能以多种方式改变:公司更换供应商;重组公司主干网络或者供应商合并或散伙。一旦外部拓扑结构改变,本地网络的地址分配也必须改变以反映外部变化。通过将这些变化集中在单个地址转换路由器中,局域网用户并不需知道这些改变。基本地址转换允许主机从内部网络中透明地访问外部网络,并容许从外部访问选定的本地主机。对于一个机构其网络主要用于内部服务而仅有时用于外部访问, 这种配置是很适用的。

使用这种转换方法是有一定限制的,即会话的请求及响应的发送必须经过相同的 NAT路由器。在边界路由器上安装 NAT 能确保这一过程,边界路由器在该域中是唯一的,而所有经过的 IP 包要么来自于此域要么到达此域。此外还可使用多重 NAT 设备确保这一过程。

NAT 解决方法有其不足之处,仅以增强的网络状态作为补充,而忽略了 IP 地址端对端的重要性。结果是,由于存在 NAT 设备,由 IPSec 保证的端对端 IP 网络级安全无法应用到终端主机。此方法的优势是不需要改变主机或路由器就可以直接安装 NAT

NAT的实现方式有三种:
即静态转换Static Nat、动态转换Dynamic Nat和端口多路复用OverLoad。

静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。

动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所有被授权访问上Internet的私有IP地址可随机转换为任何指定的合法IP地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当ISP提供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。

端口多路复用(Port address Translation,PAT)是指改变外出数据包的源端口并进行端口转换,即端口地址转换(PAT,Port Address Translation).采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问,从而可以最大限度地节约IP地址资源。同时,又可隐藏网络内部的所有主机,有效避免来自internet的攻击。因此,目前网络中应用最多的就是端口多路复用方式。

NAT原理:
借助于NAT,私有(保留)地址的”内部”网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,一个局域网只需使用少量IP地址(甚至是1个)即可实现私有地址网络内所有计算机与Internet的通信需求。

NAT将自动修改IP报文的源IP地址和目的IP地址,Ip地址校验则在NAT处理过程中自动完成。有些应用程序将源IP地址嵌入到IP报文的数据部分中,所以还需要同时对报文的数据部分进行修改,以匹配IP头中已经修改过的源IP地址。否则,在报文数据部分嵌入IP地址的应用程序就不能正常工作。

Nat-工作流程1
这里写图片描述
Nat-工作流程1

①如上图这个 client(终端) 的 gateway (网关)设定为 NAT 主机,所以当要连上 Internet 的时候,该封包就会被送到 NAT 主机,这个时候的封包 Header 之 source IP(源IP) 为 192.168.1.100 ;
②而透过这个 NAT 主机,它会将 client 的对外联机封包的 source IP ( 192.168.1.100 ) 伪装成 ppp0 ( 假设为拨接情况 )这个接口所具有的公共 IP ,因为是公共 IP 了,所以这个封包就可以连上 Internet 了,同时 NAT 主机并且会记忆这个联机的封包是由哪一个 ( 192.168.1.100 ) client 端传送来的;

Nat工作流程2
这里写图片描述
Nat工作流程2

③由 Internet 传送回来的封包,当然由 NAT主机来接收了,这个时候, NAT 主机会去查询原本记录的路由信息,并将目标 IP 由 ppp0 上面的公共 IP 改回原来的 192.168.1.100 ;
④最后则由 NAT 主机将该封包传送给原先发送封包的 Client

代理服务器:

  代理服务器(Proxy Server)是个人网络和Internet服务商之间的中间代理机构,它负责转发合法的网络信息,对转发进行控制和登记。代理服务器作为连接Internet(广域网)与Intranet(局域网)的桥梁,在实际应用中发挥着极其重要的作用,它可用于多个目的,最基本的功能是连接,此外还包括安全性,缓存,内容过滤,访问控制管理等功能。代理服务器,顾名思义就是局域上不能直接上网的机器将上网请求(比如说,浏览某个主页)发给能够直接上网的代理服务器,然后代理服务器代理完成这个上网请求,将它所要浏览的主页调入代理服务器的缓存;然后将这个页面传给请求者。这样局域网上的机器使用起来就像能够直接访问网络一样。并且,代理服务器还可以进行一些网站的过滤和控制的功能,这样就实现了我们控制和节省上网费用。
  
  代理服务器能够让多台没有IP地址的电脑使用其代理功能高速、安全地访问互联网资源。当代理服务器客户端发出一个对外的资源访问请求,该请求先被代理服务器识别并由代理服务器代为向外请求资源。由于一般代理服务器拥有较大的带宽,较高的性能,并且能够智能地缓存已浏览或未浏览的网站内容,因此,在一定情况下,客户端通过代理服务器能更快速地访问网络资源。代理服务器应用的常见例子:拥有上百台电脑的局域网通过一台能够访问外部网络资源的代理服务器而也能访问外部互联网。

代理服务器原理:
代理服务器(Proxy Server)的工作原理是:当客户在浏览器中设置好Proxy Server后,你使用浏览器访问所有WWW站点的请求都不会直接发给目的主机,而是先发给代理服务器,代理服务器接受了客户的请求以后,由代理服务器向目的主机发出请求,并接受目的主机的数据,存于代理服务器的硬盘中,然后再由代理服务器将客户要求的数据发给客户。

代理服务器功能:
(1)充当局域网与外部网络的连接出口
  充当局域网与外部网络的连接出口,同时将内部网络结构的状态对外屏蔽起来,使外部不能直接访问内部网络。从这一点上说,代理服务器就充当的网关。
(2)作为防火墙
  代理服务器.可以保护局域网的安全,起防火墙的作用。通过设置防火墙,为公司内部的网络提供安全边界,防止外界的侵入。
(3)网址过滤和访问权限限制
  代理服务器可以设置IP地址过滤,对外界或内部的Internet地址进行过滤,限制不同用户的访问权限。例如代理服务器可以用来限制封锁IP地址,禁止用户对某些网页进行浏览。
(4)提高访问速度
  代理服务器将远程服务器提供的数据保存在自己的硬盘上,如果有许多用户同时使用这一个代理服务器,他们对Internet站点所有的访问都会经由这台代理服务器来实现。当有人访问过某一站点后,所访问站点的内容便会被保存在代理服务器的硬盘上,如果下一次有人再要访问这个站点时,这些内容便会直接从代理服务器磁盘中取得,而不必再次连接到远程服务器上去取。因此,它可以节约带宽、提高访问速度。

常见的代理服务器:
1、Microsoft Proxy代理服务器

Microsoft Proxy Server 是微软提供的一种代理服务器解决方案,大型的局域网可以用它作为局域网的代理服务器软件。Microsoft Proxy 除了提供传统的代理功能外,还对当前Internet一些最新的应用提供了代理服务,如IP电话(Internet Phone)、网络寻呼机(ICQ)等。

Microsoft Proxy 包括了Web Proxy、Socks Proxy、Winsock Proxy。其中Web Proxy支持HTTP、FTP等服务,WinSock Proxy支持Telnet、电子邮件、RealAudio、IRC、ICQ等服务,Socks Proxy负责中转使用S0cks代理服务的程序与外界服务器间的信息交换。Microsoft Proxy 在运行Windows NT/2000的服务器上安装后,各工作站就可以使用Web Proxy提供的服务,上网浏览、使用FTP等。如果要使用winSock Proxy和Socks Proxy提供的服务,必须要在客户端安装配置程序,并且还要在服务器端进行设置。

相对于SyGate、WinGate等简易的代理服务器软件,Microsoft Proxy Server功能更强大,适用于企业级或大型网吧的局域网,但由于它一定要运行在WinNT/2000上,且配置比较复杂,小型局域网使用较少。

2、Microsoft ISA 代理服务器

Microsoft Internet Security and Acceleration Server (简称Microsoft ISA或ISA Server)是Microsoft Proxy Server的升级换代产品。ISA Server是一个可扩展的企业防火墙和Neb缓存服务器,可与Windows 2000/2003集成,以便为连网用户实现基于策略的安全的实现、数据访问的加速。

ISA Server 最吸引人的地方在于它和 Active Directory 的集成,这使得我们可以使用与管理其它网络和用户相同的方法来管理用户访问、 Internet 以及安全策略。ISA Server 使用 Microsoft 管理控制台(MMC), MMC 是一个界面,用来管理 Windows 2000/2003 Server 中的许多功能,而且文档十分完善。

ISA Server构建在Windows 2000/2003安全、目录、虚拟专用网络(VPN)和带宽控制基础之上。不论是作为一组单独的防火墙还是缓存服务器来部署,还是以集成的模式来部署, ISA Server均可增强网络的安全性,实施一致的Internet使用策略,加速Internet访问,并最大限度地提高各种规模公司员工的办公效率。

3、WinProxy代理服务器

Winproxy 是一种常用的代理服务器软件,只要安装在局域网的服务器上就可以了,它可以让局域网的多台客户机通过服务器上网。它支持SOCKs 4 & 5,利用Winproxy的SOCKs协议可以让客户机连通QQ。

Winproxy是一款集NAT、代理和防火墙三者为一体的代理软件,它能够支持我们提到过的多种代理方式,同样也能够支持常见的协议。从功能上看,WinProxy与WinGate十分相似,但不如WinGate强大,其性能介于WinGate和CCProxy之间,对于那些不希望使用 WinGate这么复杂软件,但还需要使用NAT共享方式的用户来说,这是一个相当不错的选择。

4 、WinGate代理服务器

WinGate可以作为一个坚固的防火墙,能控制企业内部网络的入出访问。相对同类软件,WinGate有很多优点,如可以限制用户对 Internet访问的能力,通过GateKeeper提供的强劲的远程控制和用户认证能力(Pro版),记录和审计能力, 一个SOCKS5服务器, HTTP缓存(节省带宽和加速访问),连接映射,可作为服务运行等等。

如果使用的是一个十多台计算机的局域网环境,以Wingate为代理服务器通过一个Modem上网,应该说速度还是可以接受的。不过,问题就是我们刚才也提到的,在操控方面,WinGate对用户的要求似乎更高些。

作为一款经典的代理服务软件,WinGate能够提供多种网络代理服务。其最新版除了提供常用的HTTP、Socks代理服务以外,还支持 DHCP、DNS服务。同时,它还提供了完整的POP3和SMTP服务,用户可以借此构建一个邮件服务器。WinGate还特别提供了按需拨号功能。更方便的是,WinGate还能够与Windows用户进行集成,Windows NT/2000系统用户可以直接使用已创建好的用户信息。

5、winRoute代理服务器

WinRoute除了具有代理服务器的功能外,还具有NAT(Network Address Translation,网络地址转换)、防火墙、邮件服务器、DHCP服务器、DNS服务器等功能,能为用户提供一个功能强大的软网关。

WinRoute有很多选项设置,涉及到网络配置的方方面面,但是它的帮助系统却不是很完善,由于WinRoute具有DHCP服务器的功能,局域网内部的机器还可配置成由WinRoute动态分配IP地址。

WinRoute的Commands选单比较简单,可以进行拨号、断线、收发电子邮件。总体来说,WinRoute的网络功能相当全面,是一个优秀的软网关;美中不足的就是它的用户界面显得有些简单,帮助系统不完善,从而增加了配置工作的难度。

6、SyGate代理服务器

SyGate 是一种支持多用户访问因特网的软件,并且是只通过一台计算机,共享因特网帐号,达到上网的目的。使用SyGate 若干个用户能同时通过一个小型网络,迅速、快捷、经济地访问因特网。易于安装 SyGate在数分钟之内便可以安装完成,并且通常不需要其他外加的设置。和其他代理服务器软件不同的是,SyGate仅安装Server便可以了。

易于使用 SyGate拥有直观的图形化界面,懂得操作Windows的人员均会操作。SyGate启动后便在后台运行,不需要人工的干预。易于管理在TCP/IP网络上,SyGate Client能让用户从任何一台计算机上远程监察和管理SyGate Server。

SyGate诊断程序在任何时候都能帮助你确定你的系统设置以及解决网络连接的问题。SyGate设有使用日志文件以及系统设置文件,在需要的时候可轻易地查寻与检测。尽管这些功能并非是必须的,SyGate还是能以其高度的可配适性,满足任何小型网络中的多种需要。

7、CCProxy代理服务器

CCProxy是一款国产的代理服务器软件,能满足小型网络用户所有的代理需求。它支持HTTP、FTP、Socks4、Socks5等多种代理协议,虽然不具备与Windows用户的集成能力,但CCProxy可以自行创建用户,并允许网管员根据需要为不同用户分配不同的权限。而通过相关规则的设定,CCProxy还能对单个用户连接数、访问网址等加以限制。

CCProxy代理服务器于2000年6月问世,是国内最流行的下载量最大的的国产代理服务器软件。主要用于局域网内共享Modem猫代理上网,ADSL代理共享、宽带代理共享、专线代理共享、ISDN代理共享、卫星代理共享、蓝牙代理共享和二级代理等共享代理上网。

总体来说,CCProxy可以完成两项大的功能:代理共享上网和客户端代理权限管理。CCProxy非常适合中国用户使用,无论是政府机关部门,大中小公司,学校,或是网吧,CCProxy都是实现共享上网的首选代理服务器软件。

8、squid代理服务器

在Unix/linux下使用的比较优秀的代理服务器软件Squid。之所以说它比较优秀,是因为它可以在代理服务器上作一个很大的缓存,可以把好多常去的网站内容存储到缓存中,这样,内部网的机器再访问那些网站,就可以从缓存里调用了。

这样一方面可以加快内部网浏览因特网的速度,这就是所谓的提高客户机的访问命中率;另一方面,Squid不仅仅支持HTTP协议,而且还支持 FTP, GOPHER,SSL和WAIS等协议考虑到简捷实用的原则,squid作为代理服务器不仅性能优异,而且还详细的纪录了各个客户端的访问纪录。

Squid是一个缓存internet数据的一个软件,它接收用户的下载申请,并自动处理所下载的数据。Squid可以工作在很多的操作系统中,如 AIX, Digital Unix, FreeBSD, HP-UX, Irix, Linux, NetBSD, Nextstep, SCO, Solaris,OS/2等,也有不少人在其他操作系统中重新编译过Squid。由于它安装简单,使用方便,所以已经被广泛使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值