正向代理和反向代理的区别
什么是代理服务器(Proxy Serve)?
提供代理服务的电脑系统或其它类型的网络终端,代替网络用户去取得网络信息。
为什么使用代理服务器?
提高访问速度
由于目标主机返回的数据会存放在代理服务器的硬盘中,因此下一次客户再访问相同的站点数据时,会直接从代理服务器的硬盘中读取,起到了缓存的作用,尤其对于热门网站能明显提高访问速度。
防火墙作用
由于所有的客户机请求都必须通过代理服务器访问远程站点,因此可以在代理服务器上设限,过滤掉某些不安全信息。同时正向代理中上网者可以隐藏自己的IP,免受攻击。
突破访问限制
互联网上有许多开发的代理服务器,客户机在访问受限时,可通过不受限的代理服务器访问目标站点,通俗说,我们使用的FQ浏览器就是利用了代理服务器,可以直接访问外网。
虽然正向代理服务器和反向代理服务器所处的位置都是客户端和真实服务器之间,所做的事情也都是把客户端的请求转发给服务器,再把服务器的响应转发给客户端,但是二者之间还是有一定的差异的。
正向代理和反向代理的区别
-
1、
正向代理
其实是客户端的代理,帮助客户端访问其无法访问的服务器资源。反向代理
则是服务器的代理,帮助服务器做负载均衡,安全防护等。 -
2、
正向代理
一般是客户端架设的,比如在自己的机器上安装一个代理软件。而反向代理
一般是服务器架设的,比如在自己的机器集群中部署一个反向代理服务器。 -
3、
正向代理
中,服务器不知道真正的客户端到底是谁,以为访问自己的就是真实的客户端。而在反向代理
中,客户端不知道真正的服务器是谁,以为自己访问的就是真实的服务器。 -
4、正向代理和反向代理的作用和目的不同。
正向代理
主要是用来解决访问限制问题。而反向代理
则是提供负载均衡、安全防护等作用。二者均能提高访问速度。
正向代理
正向代理(forward proxy) ,一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并制定目标(原始服务器),然后代理向原始服务器转发请求并将获得的内容返回给客户端,客户端才能使用正向代理。我们平时说的代理就是指正向代理。
简单一点:A向C借钱,由于一些情况不能直接向C借钱,于是A想了一个办法,他让B去向C借钱,这样B就代替A向C借钱,A就得到了C的钱,C并不知道A的存在,B就充当了A的代理人的角色。
这种代理其实在生活中是比较常见的,比如science上网技术,其用到的就是代理技术。
有时候,用户想要访问某国外网站,该网站无法在国内直接访问,但是我们可以访问到一个代理服务器,这个代理服务器可以访问到这个国外网站。这样呢,用户对该国外网站的访问就需要通过代理服务器来转发请求,并且该代理服务器也会将请求的响应再返回给用户。这个上网的过程就是用到了正向代理。
反向代理
反向代理(Reverse Proxy),以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求的客户端,此时代理服务器对外表现为一个反向代理服务器。
理解起来有些抽象,可以这么说:A向B借钱,B没有拿自己的钱,而是悄悄地向C借钱,拿到钱之后再交给A,A以为是B的钱,他并不知道C的存在。
总之,正向代理是从客户端的角度出发,服务于特定用户(比如说一个局域网内的客户)以访问非特定的服务;反向代理正好与此相反,从服务端的角度出发,服务于非特定用户(通常是所有用户),已访问特定的服务。