基础知识 · 1 分钟阅读

正向代理与反向代理:有什么区别?

两者都称为“代理”,但正向代理和反向代理位于对话的两侧,服务于相反的方。这本指南通过清晰的思维模型、真实的例子和并排比较来解释差异。

同一个词,反向工作

正向代理和反向代理都是中介,负责转发流量,但它们代表着不同的主体,并位于连接的两端。

一个正向代理位于客户端前面,并代表它们访问更广泛的互联网。当你通过它路由你的浏览器或脚本时,目标服务器看到的是代理的地址,而不是你的地址——这就是正向代理如何隐藏客户端的源IP。这就是“代理”的日常含义,正是s4m的SOCKS5和HTTP代理:你通过它们指向流量的正向代理。

一个反向代理位于服务器前面,并代表它们与客户端进行交互。当你访问一个大型网站时,你通常会连接到一个反向代理,然后将你的请求转发到许多后端服务器中的一个。客户端通常不知道它的存在。它保护并代表源服务器,而不是客户端——正向代理的镜像。有关完整信息,请参见我们的反向代理指南。

每个用途是什么

正向代理 — 为客户端服务:

  • 隐藏客户端的IP,以便目标看到代理(隐私、网络爬虫、广告和搜索引擎结果验证)。
  • 在企业或学校网络上进行访问控制和内容过滤(所有出站流量都通过它)。
  • 缓存出站请求并绕过地理限制。

反向代理 — 为服务器服务:

  • 负载均衡在多个后端服务器之间。
  • TLS/SSL终止,以便后端不需要处理加密。
  • 缓存和压缩(CDN是巨大的反向代理)并隐藏源服务器的真实IP。
  • 安全性:一个WAF、DDoS保护和一个在应用程序前的单一受控入口点。

常见示例:Nginx、HAProxy、Traefik和Cloudflare充当反向代理;Squid和您在客户端配置的SOCKS5/HTTP代理充当正向代理。同一软件有时可以同时执行两者,但角色由其面向的方向定义。一个有用的方式来看到这种对称性:正向代理将多个客户端隐藏在一个面向外部的地址后面,因此服务器无法区分单个用户;反向代理将多个服务器隐藏在一个面向内部的地址后面,因此客户端无法区分单个后端。在这两种情况下,中介是唯一可见的点,而它保护的对象——客户端的群体或服务器的池——保持在视线之外。

快速比较

前面
方面正向代理反向代理
坐在客户服务器
代表/保护用户网站/来源
隐藏谁的IP客户端的来源IP服务器的来源IP
谁配置它客户端(你)服务器操作员
客户端知道吗?是的,你设置了它通常没有
典型示例SOCKS5/HTTP代理,SquidNginx,Cloudflare,HAProxy
常见目标隐私,抓取,过滤负载均衡,TLS,缓存,安全

经验法则:如果它保护的是发出请求的人员making,那么它就是一个正向代理;如果它保护的是接收请求的服务receiving,那么它就是一个反向代理。

FAQ

问题,已解答

记住正向代理与反向代理的最简单方法是什么?

正向代理为客户端提供服务,并隐藏客户端的 IP 地址不被服务器看到——它为您,用户服务。反向代理为服务器提供服务,并隐藏源服务器的 IP 地址不被客户端看到——它为网站服务。相同的中介概念,反向的方向和受益者。

s4m 是正向代理还是反向代理?

s4m的SOCKS5和HTTP代理是正向代理:您配置客户端通过它们路由,目标看到的是代理的IP而不是您的。它们的存在是为了隐藏客户端的源IP,这是经典的正向代理工作。

CDN 是反向代理吗?

是的。像 Cloudflare 这样的 CDN 本质上是一个大型分布式反向代理:它位于源服务器前面,从边缘位置缓存和提供内容,终止 TLS,隐藏源 IP,并提供安全性。客户端连接到 CDN,而不知道最终为他们提供服务的后端。

通过转发代理路由流量

s4m的认证SOCKS5和HTTP转发代理隐藏您到达网站的原始IP,并提供可选的专用IP。按需计费,匿名账户,接受加密货币。

人们通过搜索找到此页面

此页面回答的真实搜索短语 — 链接的短语打开详细覆盖它们的页面。