代理、正向代理与反向代理

一、代理

1.1 什么是代理

代理也被叫做网络代理,是一种比较特殊的网络服务,允许一个终端(通常指客户端)通过这个服务与另一个终端(通常指服务器端)进行非直接的连接。例如:一些网关、路由器等网络设备都具备网络代理的功能。代理服务有利于保障网络终端的隐私或者安全,可以在一定程度上阻止网络攻击(因为通过代理,可以隐藏真正的服务器端/客户端)。

1.2 代理服务器

代理服务器
左边和右边的电脑在通讯时候,需要经过中间的电脑中转,而中间的那部电脑就是代理服务器。

1.3 代理请求过程

代理请求过程
客户端首先根据代理服务器所使用的代理协议,与代理服务器创建连接,接着按照协议请求对目标服务器创建连接、或者获得目标服务器的指定资源(如:文件)。

1.4 代理协议

此处的协议指的是网络传输协议。
主要是两种:
Socks
HTTP
网络传输协议在本篇就不做过多介绍。

二、正向代理

2.1 正向代理

代理
通常我们说的代理,都是指的正向代理。继续看这张图,你会发现,此处的代理服务器可以由客户端提供,也可以由服务器端提供。
当客户端主动使用代理服务器时,此时的代理叫正向代理。比如:一些网络代理工具(加速器/VPN…)

2.2 正向代理完整流程

正向代理时,由客户端发送对某一个目标服务器的请求,代理服务器在中间将请求转发给该目标服务器,目标服务器将结果返回给代理服务器,代理服务器再将结果返回给客户端。
使用正向代理时,客户端是需要配置代理服务的地址、端口、账号密码(如有)等才可使用的。
正向代理流程
通过上图可以看到,客户端并没有直接与服务器相连。正向代理隐藏了真实的客户端地址。可以很好地保护客户端的安全性。

2.3 正向代理的适用场景

  • 访问被禁止的资源(让客户端访问原本不能访问的服务器。可能是由于路由的原因,或者策略配置的原因,客户端不能直接访问某些服务器。为了访问这些服务器,可通过代理服务器来访问)
    • 突破网络审查
    • 再比如客户端IP被服务器封禁,可以绕过IP封禁
    • 也可以突破网站的区域限制
  • 隐藏客户端的地址(对于被请求的服务器而言,代理服务器代表了客户端,所以在服务器或者网络拓扑上,看不到原始客户端)
  • 进行客户访问控制
    • 可以集中部署策略,控制客户端的访问行为(访问认证等)
    • 记录用户访问记录(上网行为管理)
    • 内部资源的控制(公司、教育网等)
  • 加速访问资源
    • 使用缓冲特性减少网络使用率(代理服务器设置一个较大的缓冲区,当有外界的信息通过时,同时也将其保存到缓冲区中,当其他用户再访问相同的信息时, 则直接由缓冲区中取出信息,传给用户,以提高访问速度。)
  • 过滤内容(可以通过代理服务器统一过滤一些危险的指令/统一加密一些内容、防御代理服务器两端的一些攻击性行为)

三、反向代理

3.1 反向代理(Reverse Proxy)

服务器根据客户端的请求,从其关系的一组或多组后端服务器(如Web服务器)上获取资源,然后再将这些资源返回给客户端,客户端只会得知代理服务器的IP地址,而不知道在代理服务器后面的服务器集群的存在。
反向代理
反向代理整个流程:由客户端发起对代理服务器的请求,代理服务器在中间将请求转发给某一个服务器,服务器将结果返回给代理服务器,代理服务器再将结果返回给客户端。

3.2 反向代理的适用场景

  • 负载均衡
    • 如果服务器集群中有负荷较高者,反向代理通过URL重写,根据连线请求从负荷较低者获取与所需相同的资源或备援。可以有效降低服务器压力,增加服务器稳定性
  • 提升服务器安全性
    • 可以对客户端隐藏服务器的IP地址
    • 也可以作为应用层防火墙,为网站提供对基于Web的攻击行为(例如DoS/DDoS)的防护,更容易排查恶意软件等
  • 加密/SSL加速:将SSL加密工作交由配备了SSL硬件加速器的反向代理来完成提供
  • 缓存服务,加速客户端访问
    • 对于静态内容及短时间内有大量访问请求的动态内容提供缓存服务
  • 数据统一压缩
    • 节约带宽
    • 为网络带宽不好的网络提供服务
  • 统一的访问权限控制
  • 统一的访问控制
  • 突破互联网的封锁
  • 为在私有网络下(如局域网)的服务器集群提供NAT穿透及外网发布服务
  • 上传下载减速控制

四、正向代理与反向代理

4.1 正向代理与反向代理的区别

当前面的内容理解后,对于正向代理和反向代理的区别就很好理解了。
最核心的不同在于代理的对象不同。
正向代理是代理客户端,反向代理是代理服务器。
而根据这核心的区别,我们也可以记住:代理哪端便可以隐藏哪端。
也就是说:
正向代理隐藏真实客户端,反向代理隐藏真实服务端。

4.2 反向代理为什么叫反向代理

从我们用户的角度来看:
代理我们发出请求的客户端被称为正向代理。而代理我们访问的服务器,则被称为反向代理。

从代理结构的角度来看(代理服务器在两种代理中的作用均为收发请求与响应):
正向代理
客户端与代理服务器属于一个局域网(看图左边),称为正向代理。
反向代理
服务器端与代理服务器属于一个局域网时(看图右边),称为反向代理。

五、总结

最后,请记住:
正向代理为客户端服务。
反向代理为服务器端服务。

参考文章:https://www.zhihu.com/question/36412304/answer/2254739842

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/30026.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何下载一直播的回放视频

想下载一直播回放视频,然后就可以用播放器倍速观看了 (一)处理一下想要下载的视频 (二)使用ffmpeg将.m3u8格式文件转换成.mp4文件 (1)下载: 下载地址:windows版本 : http://ffmpe…

php对接腾讯云直播,聊天,im,云录制产生回放

首先先在腾讯云中开通这三项 IM中创建项目 云直播 解析推拉流地址: $domain $this->getConfig(anchor_push); //推流地址$domainpull $this->getConfig(anchor_pull); //拉流地址$streamName kangfuyuan.$res; //直播间ID(唯一的&am…

心法利器[84] | 最近面试小结

心法利器 本栏目主要和大家一起讨论近期自己学习的心得和体会,与大家一起成长。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有。 2022年新一版的文章合集已经发布,累计已经60w字了,获取方式看这里&…

Visual Studio 2022 集成虚幻引擎功能

【CSDN 编者按】微软作为全球著名的游戏厂商,其在游戏制作与开发体验上也积极下功夫。在听取了游戏开发人员的反馈后,Visual Studio 2022 正式集成 Unreal Engine (UE、虚幻引擎) 作者 | David Li 责编 | 梦依丹 出品 | CSD…

苹果:付费才能用 iOS 开发者预览版,网友吐槽:找 Bug,还得先交 99 美元?

整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 以后要尝鲜 iOS 开发者预览版,要先付费,才能测试? 苹果的更新说明 近日,苹果最新公布的一项政策引发了不少开发者的争议,其表示,从…

Android 系统 TP 事件处理流程

简单流程 首先注册 i2c 设备,添加 tp 驱动,然后在 tp 驱动上响应中断、获取用户操作的 数据,通过筛选等一系列操作将数据上报。 *中断、线程、工作队列生成 *放大缩小、xy 对调等算法 *get_event 函数使用 1. 系统调用 TP 驱动 TP 驱动的调…

Java网络编程之UDP和TCP套接字

一. 网络编程概述 我们知道在网络通信中, 数据的发送是从应用层开始, 一直封装到物理层然后进行发送的, 应用层要将数据交给传输层进行封装; 而接收方拿到数据后是从物理层到应用层进行分用, 传输层要将拿到的数据再分用给应用层进行使用, 网络编程实际操作中最关键的就是我们所…

工程师“魔改” AirPods Pro 接口,苹果“妥协”将成大势所趋?

整理 | 朱珂欣 出品 | CSDN程序人生(ID:coder_life) 近年来, USB-C 接口凭借其高效的数据传输、充电速度等优势,促使时下的许多手机品牌大规模使用,可谓实现了统一“半壁江山”的势头,甚至盖…

web开发中的通信协议

websocket def:websocket协议是基于tcp的,实现浏览器与服务器之间全双工通信的一种网络协议 websocket是一种持久协议,多应用在聊天,客服咨询等有实时报送需求的场景下。 早期没有websocket时,通过ajax短时轮询&#x…

GLM联合go-cqhttp实现qq群GLM机器人服务器的本地化部署笔记

GLM qq群服务器的本地化部署笔记 一. 概述1.1 整体结构1.2 目标1.3 需求1.4 流程说明 二. 部署流程2.1 使用GPT转发程序帮助文档2.1.1 使用git安装GLM2.1.2 不使用git安装GLM 2.2 使用Anaconda Navigator 虚拟运行GLM2.2.1 [https://www.anaconda.com/](https://www.anaconda.c…

chatglm-6b:本地手动下载,本地部署

文章目录 模型效果演示操作步骤步骤一步骤二步骤三 ChatGLM-6B是一个由清华大学和智谱AI联合研发的开源对话语言模型。它是一个支持中英双语问答的对话系统,并在中文方面进行了特别的优化。 该模型基于General Language Model (GLM)架构,具有62亿参数。借…

阿里组织变革:设立六大业务集团,成熟一个,上市一个;微软软件工程师最高年薪28.8万美元;iOS 16.4 发布|极客头条...

「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews) 一分钟速览新闻点&#…

乐视实行四天半工作制,网友:还招人吗,我有个朋友想去!

作者 | 苏宓、出品 | CSDN(ID:CSDNnews) 新春的第一个工作日,有一个别人家的公司登上了热搜,羡煞旁人,它就是乐视。 起因是因为#乐视开始实行每周四天半工作制#,所谓话少事大,在官宣…

学历造假、拖欠工资、核心技术归属存疑?AI 独角兽创始人遭质疑后回应!

整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 所谓树大招风,正在 Stability AI 及其创造的 Stable Diffusion 模型工具身上体现出来。 Stable Diffusion(SD)是如今主流的文本创建图像的生成式 AI 工具&#xff0c…

『突破极限』利用ChatGPT一分钟生成思维导图,从此告别繁琐,助你轻松学习……

大家有没有经常需要做思维导图的时候? ChatGPT可以快速做PPT、快速做短视频、快速做图片,那可不可以快速做思维导图呢? 答案是肯定滴,而且出图速度超出你的想象,非常离谱。 以后读文献、书籍、商业文章分析简直就是…

【问题已解决】无法定位程序输入点于XXX动态链接库***.dll上

无法定位程序输入点于XXX动态链接库***.dll上 事件前因后果温馨提示解决方法 ChatGPT中文版购买 事件前因后果 在一次安装又卸载falsh(可能非正版)后,关机再开机后,发现除了浏览器,其他软件双击打开是都提 示无法定位…

使用WPS时,SAP导出文件提示windows找不到文件

朋友碰一个问题,用户使用WPS后,SAP导出excel文档,系统无法自动打开且提示以下错误,安装office的就没有这个问题。 不可能让用户去下载office,那样会显 得SAP很拉跨,再说了那么多用户,你去给他装…

WPS Office AI实战:Excel表格处理与分析,一句话搞定

前面几篇我已经系统性将 WPS AI 的能力介绍给你,唯独 Excel 表格的 AI 助力姗姗来迟。近日在WPS AI的功能介绍里发现WPS已经悄悄集成了AI能力,今天就为你拆解下日常的Excel处理,AI 可以提供哪些帮助。(与智能表格 AI 能力相似&…

WPS Office AI实战:智能表格化身智能助理

前面我们已经拿 WPS AI 对Word文字、PPT幻灯片、PDF 做了开箱体验,还没有看过的小伙伴,请翻看以前的文章,本文开始对【智能表格】进行AI开箱测验。 表格在日常的数据处理中占绝对地位,但表格处理并不是每一个人都擅长,…

阿里巴巴腾讯网易京东都宣布了各自的 AI 计划;微软推进裁员 1 万人计划;Rust 1.67.1 发布|极客头条...

「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews) 一分钟速览新闻点&#…