Shadowsocks是什么意思?

一句话解释

Shadowsocks 是一种结构简单的加密代理协议,客户端与服务器约定好加密方式和密码,数据按约定加密后转发。

Shadowsocks 常被缩写成 SS,是出现较早、兼容面很广的代理协议。你会在机场的协议说明和节点详情里看到它,参数通常只有地址、端口、加密方式和密码,几乎所有主流客户端都能导入。

为什么它至今还被提起

Shadowsocks 的设计非常克制:服务器和客户端预先约定一种加密算法和一个密码,客户端把要访问的目标和数据加密后发给服务器,服务器解密后代为访问。没有复杂的握手和协商,实现简单,各种平台和内核基本都有支持。因此它长期被视为“兼容性很好的一类协议”,很多老客户端、路由器插件也只认它。官方介绍可见 Shadowsocks 官网。

节点参数里有什么

典型的 SS 节点包括四项:服务器地址、端口、加密方式、密码。有的节点还会带插件参数,用来增加伪装或传输层的能力,但是否支持插件取决于客户端。

加密方式的选择,一般来说较新的 AEAD 类算法更受推荐,早期的流式加密在官方文档里已不建议使用,以官方文档为准。如果你的机场只提供旧式加密方式,要留意这一点。

与同类协议的位置关系

维度 Shadowsocks Trojan VMess
配置复杂度 低 中,需域名与证书 中
兼容范围 非常广 广 广
外观特征 不模仿 HTTPS 接近 HTTPS 自有特征

它的“简单”既是优点也是限制:协议本身不做伪装,所以能否被网络环境识别,不由它说了算。是否值得选,要结合机场协议怎么选里的使用场景来看。

在哪里会遇到,需要注意什么

  • 在机场的套餐介绍里,作为基础支持协议之一被提到。
  • 在老路由器或旧版客户端里,它可能是唯一能用的协议。
  • 在订阅里,常以 ss:// 开头的单条链接形式出现,导入时要看客户端是否能识别。

常见误解

  1. “SS 过时了,不能用”。它仍然被广泛使用,只是不一定是新部署的首选。
  2. “SS 就是一个软件”。它是协议,客户端和服务端各有多种实现。
  3. “加密方式随便选”。两端必须一致,而且不同客户端支持的算法范围不同,导入失败时先看这一项。

怎么自己判断

如果你的设备很旧、客户端选择有限,或者需要在路由器上用,SS 的兼容性是实打实的价值。如果你在用较新的客户端,则可以结合内核支持情况,看看是否有更适合的协议可选。

讲到Shadowsocks的指南

想看各家机场在这一项上的资料?

机场推荐榜逐家列出了价格、线路、协议和节点地区;拿不准怎么选,可以用选梯子向导。