当前位置:首页 > 站长知识 > 服务器 > 正文内容

代理服务器是什么意思

2024-12-18服务器2

    代理服务器(ProxyServer)的功能是代理网络用户去取得网络信息。形象地说,它是网络信息的中转站,是个人网络和Internet服务商之间的中间代理机构,负责转发合法的网络信息,对转发进行控制和登记。

    工作原理

    代理服务器作为一种既是服务器又是客户机的中间程序,主要用于转发客户系统的网络访问请求。但是,代理服务器不只是简单地向真正的因特网服务器转发请求,它还可以控制用户的行为,对接收到的客户请求进行决策,并根据过滤规则对用户请求进行过滤。

    通过代理服务器,网络管理员可以实现比用包过滤路由器更严格的安全策略。不同于使用通用的包过滤路由器来管理通过防火墙的因特网服务流向,代理服务器通过在网关上为每项需要的应用安装专用的代码(代理服务)来工作。如果网络管理员没有为某一特殊服务安装代理服务代码,该服务就不会被支持,也不会通过防火墙转发相应的客户请求。并且,这种代理服务器码能被配置成仅支持某项服务的网络管理员认为可以接受的那部分特征,而不支持其他的特征。

    主要功能

    代理服务器具有许多功能。对于我们个人用户而言,通过代理上网,能让我们访问一些直接访问会比较慢的网站,比如互联网用户访问教育网的网站。对于单位而言,内部使用代理可以预先过滤一些病毒,保障上网的安全,还能有效地进行访问控制、网速限制,上网监控等等。

    以下介绍代理服务器的基本功能:

    (1)一个lP地址或Internet账户供多个用户同时使用

    在目前情况下,IP地址是Internet中有限的宝贵资源,如果将这些IP地址仅仅用于单个的请求Internet访问的用户,不能不说是一种资源浪费。使用代理服务器可以做到通过一个IP同时向多个用户提供Internet的访问,对于通过电话拨号连通Internet的内部网络,则可以实现利用一条电话线,一个modem和一个Internet账户,让内部网络上所有用户同时访问Internet,这样就充分利用了IP地址资源。

    (2)缓存功能,可以降低费用,提高速度

    安装时,代理服务器会在硬盘上开出一块磁盘空间作为缓存区,将代理用户从Internet上接收的内容下载一份保存起来,当再有用户访问同样内容时,就直接从缓存区传送给用户,而不再从Internet上寻找。代理服务器的这项功能可以大大地提高访问速度,同时也降低了通信费用,是一项相当重要的功能。

    (3)对内部网络用户进行权限和信息流量计费管理

    通过代理服务器,网管员在提供Internet服务时,可以容易地对内部网络用户进行访问权限和信息流量计费的管理。网管员不但能够做到只允许被授权的局域网用户访问Internet,还能够控制这些用户在哪些时间、使用哪台计算机访问哪些类型的Internet服务。对于已经获准访问的Internet的用户,网管员还能够按照多种方式进行信息流量的计费管理,如:按照个人计费、按照部门所属计算机计费等,为网络管理带来了极大的方便。

    (4)对进入内部网络的Internet信息实施监控和过滤

    为了避免那些与业务无关的信息进入内部网络浪费通信资费,各个机构对允许访问的内容往往有一些相应的规定。通过代理服务器,网管员不但可以采取过滤的方法简便地控制从Internet流入内部网络的信息内容,还能对用户访问Internet的情况进行实时监控和建立监查日志存档备查。

    主要分类

    通过代理服务器共享上网从技术实现角度来说可以分为硬件共享上网和软件共享上网两种方式,从代理服务器工作的层次的角度来说可以分为应用层代理、传输层代理和SOCKS代理。

    应用层代理工作在TCP/IP模型的应用层之上,它只能用于支持代理的应用层协议(如HTTP,FTP)。它提供的控制最多,但是不灵活,必须要有相应的协议支持。如果协议不支持图2所示的代理服务器实现模型(如SMTP和POP),那就只能在应用层以下代理,也即传输层代理。最后一种代理需要改变客户端的IP栈,即SOCKS代理。它是可用的最强大、最灵活的代理标准协议。以下将从代理服务器工作的层次的分类角度上介绍几种不同层次的代理服务器。

    应用层代理

    这里主要介绍基于HTTP协议的代理服务器。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。根据HTTP协议规定,当客户端使用代理模式时,发送的请求命令格式如下:methodhttp://hostname/path/⋯/fiIename。

    当客户端同网络代理服务系统建立连接后,代理服务器将收到请求命令,这时代理服务器应该截取主机名部分进行域名解析,并同该主机建立连接,将去掉主机名部分的请求命令转发给它,等待它做出响应,然后将得到的响应转发给客户端,最后断开连接。其模型如图3所示。

    传输层代理

    传输层代理直接与TCP层交互,更加灵活。要求代理服务器具有部分真正服务器的功能:监听特定TCP或UDP端口,接收客户端的请求同时向客户端发出相应的响应。

    socks代理

    Socks是一个客户/服务器环境的代理协议。它包括两个主要的组件,Socks服务器和Socks客户库。Socks服务器实现在应用层,Socks客户库实现在客户的应用层与传输层之间。一个代理服务器为客户机与应用服务器建立连接,代理服务器在客户与应用服务器之间中转数据,从应用服务器的角度来看,代理服务器是客户。

    当客户想建立到应用服务器的连接时,先连接到代理服务器。应用服务器的地址和端口号通过代理协议被传递到代理服务器,然后,代理服务器再连接到应用服务器。一旦到应用服务器的连接被建立,代理服务器在客户与应用服务器之间中转数据。

    目前,有两个版本的Socks协议,版本4和版本5。Socks版本4被简写为“SocksV4”,Socks版本5被简写为“SocksV5”。