目录
一、定义
1、正向代理(forward proxy)
2、反向代理(Reverse proxy)
3、透明代理(transparent proxy)
二、生活中代理的例子
1、正向代理
2、反向代理
三、代理的作用
1、正向代理的作用
2、反向代理的作用
目前大家提到的代理技术无外乎三种:正向代理、透明代理和反向代理
1、正向代理(forward proxy)
客户端想要访问一个服务器,但是它可能无法直接访问这台服务器,这时候这可找一台可以访问目标服务器的另外一台服务器,而这台服务器就被当做是代理人的角色 ,称之为代理服务器,于是客户端把请求发给代理服务器,由代理服务器获得目标服务器的数据并返回给客户端。客户端是清楚目标服务器的地址的,而目标服务器是不清楚来自客户端,它只知道来自哪个代理服务器,所以正向代理可以屏蔽或隐藏客户端的信息。
2、反向代理(Reverse proxy)
从上面的正向代理,你会大概知道代理服务器是为客户端作代理人,它是站在客户端这边的。其实反向代理就是代理服务器为服务器作代理人,站在服务器这边,它就是对外屏蔽了服务器的信息,常用的场景就是多台服务器分布式部署,像一些大的网站,由于访问人数很多,就需要多台服务器来解决人数多的问题,这时这些服务器就由一个反向代理服务器来代理,客户端发来请求,先由反向代理服务器,然后按一定的规则分发到明确的服务器,而客户端不知道是哪台服务器。常常用nginx来作反向代理。
3、透明代理(transparent proxy)
透明代理也叫做内网代理(inline proxy)、拦截代理(intercepting proxy)以及强制代理(force proxy),所谓透明,即代理对客户端具有无感知性,即不需要客户端进行额外配置。
透明代理和正向代理基本相似,甚至是透明代理可以作为正向代理的一种。
透明代理技术经常作为一种备选模式存在,如在防火墙中作为策略,对部分流量进行过滤拦截;一般公司内的上网行为管理系统也是透明代理的应用。
另外如果有喜欢玩路由器的表哥应该接触过梅林、潘多拉系统,其中的代理模式对于网络使用者亦是透明代理的应用。
总的来说,只要是网关或主链路上的网络设备均可以实现透明代理模式,或者配合路由转发等技术搭配使用效果更佳。
1、正向代理
就租房族来说吧( 不知道大家有没有租过房子 ,反正我只是个freshman!)据我所知,租房子这个活动中的参与者无外乎:
①租客(用户)、②中介(代理服务器)、③房东(国外网站,目标服务器)
租房子一般会很难找到房东(目标服务器),但是房东却会把房屋信息、钥匙给中介(代理服务器)。对于房东(目标服务器)来说,他可能不知道要租他房子的人(用户)是谁,他只知道中介(代理服务器)在联系他。
引入中介(代理服务器)其实也就是因为租客(用户)无法直接联系房东(目标服务器)
2、反向代理
还是租房子:假如没有中介:只有①房东、②二房东(放房东对外租房)、③租客,Web开发中就经常有这种反向代理:客户端(租客)发送请求到负载均衡服务器(二房东),负载均衡服务器(二房东)再把请求转发给一台真正的服务器(房东)来执行,再把执行结果返回给客户端(租客)
1、正向代理的作用
(1)突破自身IP访问界限(访问国外网站、教育网。。。)
(2)提高访问速度(通常代理服务器都会设置一个较大的硬盘缓冲区,会将部分请求的响应保存到缓冲区中,若其他用户访问相同信息时,直接从缓冲区中取出信息)
(3)隐藏用户的真是IP(上网者可通过这种方法隐藏自己的真实IP)