反向代理
反向代理的比喻:A(在俄罗斯),B(在英国),C(在美国)三个人相互或间接(A 认识 B,B 认识 C,那么 A 间接认识 C)认识,而 A 不能联系 C,但 B 能联系 C,此时 A 只能通过联系 B,让 B 与 C 联系,让 B 做传话筒,以间接的形式实现 A 与 C 通讯。
应用的场景:
1. 国外的某一个域名(abc.us)没有在国内备案,所以将域名解析到香港的某台服务器上(该服务器就是反向代理),实现国内客户通过香港的某台服务器访问国外的abc.us。那么客户访问代理服务器,代理服务器访问国外站点,然后代理服务器再将信息返回给客户。
2. 客户端访问某一个域名,该域名服务器不直接提供服务,而是由该域名服务器(反向代理)后面的服务器集群实现具体的服务。
正向代理
正向代理的比喻:A(客户1),B(客户2),C(万能的中间商,什么东西都能弄到【最接近神的中间商】。相当与DNS的功能),A 与 B 都认识 C (A 与 B 可以相互不认识),A 与 B 委托 C 帮买各自的东西。
应用的场景:
1. 企业内部只有一台电脑 A 能上网,其他员工的电脑不能上网,若其员工想上网,只能通过电脑 A 实现上网代理,那么网站的数据返回给电脑 A,电脑 A 再返回给员工。(可以在正向代理上捆绑杀毒软件,对员工访问的网站统一杀毒)
若只单纯站在DNS为不同的客户端解析不同域名的IP,在这个角度下,可以认为这种行为就是正向代理。
概念的理解
多个客户端通过一个固定的代理服务器能访问到不同的域名,那么该代理服务器为正向代理。
多个服务器通过一个固定的代理服务器能为不同的客户端提供同一个域名的服务,那么该代理服务器是这个域名的反向代理。