大家好,欢迎来到IT知识分享网。
目录
目前大家提到的代理技术无外乎三种:正向代理、透明代理和反向代理
一、定义
1、正向代理(forward proxy)
客户端想要访问一个服务器,但是它可能无法直接访问这台服务器,这时候这可找一台可以访问目标服务器的另外一台服务器,而这台服务器就被当做是代理人的角色 ,称之为代理服务器,于是客户端把请求发给代理服务器,由代理服务器获得目标服务器的数据并返回给客户端。客户端是清楚目标服务器的地址的,而目标服务器是不清楚来自客户端,它只知道来自哪个代理服务器,所以正向代理可以屏蔽或隐藏客户端的信息。
2、反向代理(Reverse proxy)
从上面的正向代理,你会大概知道代理服务器是为客户端作代理人,它是站在客户端这边的。其实反向代理就是代理服务器为服务器作代理人,站在服务器这边,它就是对外屏蔽了服务器的信息,常用的场景就是多台服务器分布式部署,像一些大的网站,由于访问人数很多,就需要多台服务器来解决人数多的问题,这时这些服务器就由一个反向代理服务器来代理,客户端发来请求,先由反向代理服务器,然后按一定的规则分发到明确的服务器,而客户端不知道是哪台服务器。常常用nginx来作反向代理。
3、透明代理(transparent proxy)
总的来说,只要是网关或主链路上的网络设备均可以实现透明代理模式,或者配合路由转发等技术搭配使用效果更佳。
二、生活中代理的例子
1、正向代理
就租房族来说吧( 不知道大家有没有租过房子 ,反正我只是个freshman!)据我所知,租房子这个活动中的参与者无外乎:
①租客(用户)、②中介(代理服务器)、③房东(国外网站,目标服务器)
租房子一般会很难找到房东(目标服务器),但是房东却会把房屋信息、钥匙给中介(代理服务器)。对于房东(目标服务器)来说,他可能不知道要租他房子的人(用户)是谁,他只知道中介(代理服务器)在联系他。
引入中介(代理服务器)其实也就是因为租客(用户)无法直接联系房东(目标服务器)
2、反向代理
还是租房子:假如没有中介:只有①房东、②二房东(放房东对外租房)、③租客,Web开发中就经常有这种反向代理:客户端(租客)发送请求到负载均衡服务器(二房东),负载均衡服务器(二房东)再把请求转发给一台真正的服务器(房东)来执行,再把执行结果返回给客户端(租客)
三、代理的作用
1、正向代理的作用
(1)突破自身IP访问界限(访问国外网站、教育网。。。)
(2)提高访问速度(通常代理服务器都会设置一个较大的硬盘缓冲区,会将部分请求的响应保存到缓冲区中,若其他用户访问相同信息时,直接从缓冲区中取出信息)
(3)隐藏用户的真是IP(上网者可通过这种方法隐藏自己的真实IP)
2、反向代理的作用
(1)隐藏服务器的IP(租客不知道房东的真身份)
(2)负载均衡(反向代理服务器根据真是服务器的负载情况,将客户端请求分别发到不同的真是服务器上。—>二房东发现房东很忙,于是找到了房东的妻子帮忙处理!)
(3)提高访问速度(反向代理服务器对短时间内有大量访问请求的动态内容提高缓存服务,—>二房东也会有钥匙呢!)
(4)提供安全保障(反向代理服务器也可以作为应用层防火墙,①、对网站提供基于Web的攻击的防护②、排查恶意软件、还可以为后端服务器提供加密和SSL加速(SSL终端代理))③、提供HTTP访问认证。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/142830.html