Skip to content

正向代理和反向代理

正向代理(Forward Proxy)

  • 定位:代表客户端向服务器发送请求。
  • 作用对象:隐藏客户端的真实身份(如IP地址)。
  • 典型场景
    • **突破网络限制: 在某些地区或网络环境下,用户可能无法直接访问某些网站或服务。此时,可以通过设置正向代理来突破这些限制,实现访问。

    • 网络安全(隐匿客户端IP): 通过正向代理,企业可以监控和管理员工的网络访问行为,隐藏客户端真实IP,防止敏感数据泄露。

    • ** 内容过滤:** 学校、图书馆等公共场所可以通过正向代理过滤不良内容,保护用户免受不良信息的侵害

    • ** 提高访问速度:** 代理服务器设置硬盘缓冲区,可以将部分高频请求的响应数据保存到缓冲区中,以提高访问速度。

  • 配置方式:客户端主动设置代理服务器地址。
  • 比喻:像一个“客户端代言人”,替用户向外部服务器发起请求。


反向代理(Reverse Proxy)

  • 定位:代表服务器端接收客户端的请求。
  • 作用对象:隐藏后端服务器的真实信息(如IP、架构)。
  • 典型场景
    • 负载均衡(将请求分发到多个服务器)。
    • 提高安全性(如防止DDoS攻击)。
    • SSL加密卸载(由反向代理处理HTTPS)。
    • 缓存静态资源(提升访问速度): 内容分发网络(CDN)通过在全球范围内部署反向代理服务器,实现内容的就近访问和加速传输。
    • API网关: API网关通常采用反向代理的方式,对外部请求进行统一管理和调度,实现API的安全、高效访问。
  • 配置方式:由服务器管理员部署,客户端无感知。
  • 比喻:像一个“服务器守门员”,对外统一接收请求并转发给内部服务。


核心区别总结

对比维度正向代理反向代理
服务对象客户端服务器端
隐藏对象客户端真实IP后端服务器信息
配置方客户端主动设置服务器管理员部署
典型工具Shadowsocks、VPNNginx、HAProxy、CDN
主要目的突破访问限制、客户端匿名负载均衡、安全防护、加速

示例理解

  • 正向代理:你通过VPN访问Google,Google看到的是VPN服务器的IP,而不是你的真实IP。
  • 反向代理:访问example.com时,Nginx将请求转发给背后的Web服务器集群,你并不知道实际处理请求的是哪台服务器。
    通过这种分工,正向代理保护客户端,反向代理优化和保护服务端,两者共同构建了现代网络的高效与安全。

前端知识体系 · wcrane