从零开始讲清楚翻墙的基本原理(2)

SOCKS5 —— 现代代理协议的起点

SOCKS5 现代代理协议的起点

导读

在上一期《何为代理?何为 VPN?》中,我们了解了翻墙技术最基础的两种思路:

  • Proxy(代理):帮你转发请求
  • VPN:帮你建立加密隧道

而从这一期开始,我们正式进入具体协议的讲解。

如果把现代翻墙技术的发展史看作一棵大树,那么 SOCKS5 就是这棵树最重要的根之一。

后来的:

  • Shadowsocks
  • VMess
  • Trojan
  • VLESS
  • Reality

都或多或少受到了 SOCKS5 设计思想的影响。

理解 SOCKS5,也就理解了现代代理协议最核心的工作逻辑。


1. 什么是 SOCKS?

SOCKS 全称:

Socket Secure(套接字安全)

它本质上是一种通用代理协议。

作用很简单:

在客户端和代理服务器之间建立连接,然后由代理服务器帮你转发数据。

SOCKS5 并不关心你访问的是:

  • HTTP 网站
  • FTP 服务器
  • 游戏服务器
  • 视频服务

还是其他应用。

只要是 TCP 或 UDP 数据,它都可以帮你转发。

你可以把 SOCKS5 理解成:

一个万能中间人。

无论你想访问什么,它都会负责帮你转交请求和返回结果。


2. SOCKS 的发展历史

SOCKS 并不是一个新协议。

早期的 SOCKS4:

  • 只支持 TCP
  • 不支持认证
  • 不支持 UDP
  • 不支持 IPv6

随着互联网的发展,这些限制越来越明显。

1996 年,RFC 1928 发布。

SOCKS5 正式成为标准。

相比 SOCKS4,它增加了:

  • TCP + UDP 支持
  • 身份认证
  • IPv6 支持
  • 远程 DNS 解析
  • 更灵活的命令体系

从此 SOCKS5 成为了现代代理协议的重要基础。


3. SOCKS5 的核心功能

相较于 SOCKS4,SOCKS5 的升级非常明显。

TCP + UDP

支持:

  • 网页浏览
  • 游戏
  • 语音通话
  • DNS 查询

等各种应用。

多种认证方式

支持:

  • 无认证
  • 用户名密码认证
  • GSSAPI

提高了安全性。

IPv6 支持

能够适应现代网络环境。

远程 DNS 解析

客户端不需要自己解析域名。

而是交给代理服务器完成。

这样可以减少 DNS 泄漏问题。

更灵活的命令体系

支持:

  • CONNECT
  • BIND
  • UDP ASSOCIATE

满足更多应用场景。

一句话总结:

SOCKS4 是简单转发 TCP,而 SOCKS5 是一个功能完整、可扩展的现代代理协议。


4. SOCKS5 的工作流程

SOCKS5 的工作过程并不复杂。

大致分为五步:

  1. 客户端发起握手
  2. 代理验证身份(可选)
  3. 客户端发送命令请求
  4. 代理建立目标连接
  5. 双方开始传输数据

SOCKS5 流程图(由 OpenAI 生成)

SOCKS5 的工作流程

生活中的例子:

假设你有一个朋友在美国。

你想访问某个网站,但自己无法直接访问。

于是:

  1. 你把信交给朋友
  2. 朋友确认你的身份
  3. 你告诉朋友收件地址
  4. 朋友帮你寄出信件
  5. 收件人回复后,朋友再转交给你

在整个过程中:

朋友就是 SOCKS5 代理服务器。


5. SOCKS5 的优点

通用性强

几乎支持所有 TCP / UDP 应用。

性能优秀

只负责转发数据。

不会解析具体应用内容。

因此开销较低。

灵活性高

支持:

  • 分流
  • 游戏
  • P2P
  • DNS

等多种场景。

隐私保护

支持远程 DNS 解析。

同时隐藏真实出口 IP。

正因为如此:

SOCKS5 成为了后续众多代理协议学习与实现的基础。


6. SOCKS5 的局限性

虽然 SOCKS5 很优秀。

但它也存在明显问题。

缺乏加密

早期 SOCKS5 默认以明文方式传输。

缺乏流量伪装

协议特征较明显。

容易被识别。

安全性依赖上层协议

如果数据本身未加密。

代理服务器可以直接看到内容。

因此后来出现了:

  • Shadowsocks
  • VMess
  • Trojan
  • VLESS

等增强型代理协议。

它们的核心思路其实很简单:

保留 SOCKS5 的代理模型,再增加加密、伪装和反识别能力。


7. 实际应用

如今 SOCKS5 仍然广泛存在于各种软件中。

例如:

  • 浏览器代理
  • 游戏加速
  • Clash
  • Mihomo
  • Sing-box
  • Shadowrocket

很多软件即使最终使用的是其他协议。

也依然会提供 SOCKS5 出站接口。

常见工具:

  • Proxifier
  • Clash
  • Shadowrocket

需要注意的是:

SOCKS5 只是代理协议,真正的安全性仍然取决于你的服务器和上层加密方案。


小结

SOCKS5 是现代代理协议的基石。

它首次完整定义了:

客户端 → 代理服务器 → 目标网站

这一经典代理模型。

后来的:

  • Shadowsocks
  • VMess
  • Trojan
  • VLESS

本质上都是在这个模型之上不断增加:

  • 加密
  • 伪装
  • 性能优化

理解 SOCKS5,你就掌握了现代翻墙协议最核心的底层逻辑。


下一期预告

下一期:

Shadowsocks —— 为什么它统治了一个时代?

我们将会介绍:

  • Shadowsocks 是如何诞生的
  • 为什么 SOCKS5 不够用了
  • 加密代理是如何出现的
  • Shadowsocks 为什么能成为一代经典

敬请期待。


© 2026 KaliJerry

本文为《从零开始讲清楚翻墙的基本原理》系列原创内容。

允许转载和引用,请注明出处:

@KalijerryUK1

部分配图由 OpenAI 生成,仅用于技术科普与学习交流。