Snell 服务器由 PSK(预共享密钥)和版本描述,还可以使用混淆。Snell 是 Surge 团队的代理协议。客户端的版本必须与服务器一致,所以请先确认:它是服务商 Surge 配置中的 version,或服务器所运行的 snell-server 版本。
你可以手动添加 Snell 服务器、通过 snell:// 链接添加,或通过导入添加:
- Clash 或 Mihomo 订阅,
- Surge 配置。
版本
| 版本 | 支持情况 | 测试环境 |
|---|---|---|
| v1, v2 | ❌ | |
| v3 | ✅ | open-snell |
| v4 | ✅ | snell-server v4 |
| v5 | ✅ 不含 QUIC Proxy Mode | snell-server v5 |
| v6 | ✅ | snell-server v6 |
v5 服务器也接受 v4 客户端,v4 服务器也接受设为 v5 的客户端。其他任何版本组合都无法连接。
v5 的 QUIC Proxy Mode 是 Surge 转发 QUIC 流量的一种方式。Potatso 改为像其他 UDP 流量一样转发 QUIC,所以 QUIC 仍然可用。
Snell v6 在 Surge 中仍处于测试阶段,之后可能发生导致旧客户端无法使用的变化。请让服务器的版本保持为服务商推荐的版本。
混淆
| 混淆 | v3 | v4, v5 | v6 |
|---|---|---|---|
| 无 | ✅ | ✅ | ✅ |
| HTTP | ✅ | ✅ | |
| TLS | ✅ | ❌ 服务器只提供 HTTP |
混淆会让连接的开头看起来像一个 HTTP 请求或一次 TLS 握手。它必须与服务器的 obfs 设置一致。请把混淆主机设为服务商给出的主机名:未设置时,Potatso 与 Clash 一样使用 bing.com。
v6 服务器没有混淆。它改为根据 PSK 对流量做整形,你的设备上无需为此设置任何内容。
v6 模式
| 模式 | 支持情况 |
|---|---|
default:加密并整形流量 |
✅ |
unshaped:加密但不整形流量 |
✅ |
unsafe-raw:不加密,不整形 |
✅ |
模式必须与服务器的 mode 设置一致。unsafe-raw 会原样发送你的流量,也不校验 PSK:仅在另一个安全隧道内使用。
连接复用
开启复用连接后,与某个网站的连接结束时,Potatso 会保持 Snell 连接不断开,并把它用于下一条连接,从而省去一次往返。v4 及更高版本支持复用。v3 服务器从不复用连接,所以 v3 不显示此设置。
UDP
Snell v3 及更高版本在 Snell 连接内承载 UDP。与 Clash 一样,UDP 默认关闭。如果你的服务器转发 UDP,请在服务器设置中开启 UDP 转发。与 Surge 一样,Surge 配置总是开启它。
使用 v5 服务器时,大于约 2.5 KB 的 UDP 回复到达时会被截断:服务器以只有 Surge 才能读取的形式发送它们。大多数 UDP 流量(如 DNS、QUIC 和通话)使用较小的数据包。v4 或 v6 服务器没有这个问题。
Surge 设置
Potatso 会导入 Surge 配置中的 snell 行:
Snell = snell, snell.example.com, 8443, psk=secret, version=4, obfs=http, obfs-host=bing.com, reuse=true| 设置 | 支持情况 |
|---|---|
psk |
✅ |
version |
✅ 3 到 6。没有 version 时,Surge 使用 v1,所以 Potatso 不会导入该行。 |
obfs, obfs-host |
✅ 见混淆 |
obfs-uri |
❌ |
reuse |
✅ |
mode |
✅ 仅 v6 |
udp-port |
❌ |
shadow-tls-password |
❌ |
tfo |
❌ 已忽略 |
如果某一行需要上面某项不受支持的设置,或在 v4 及更高版本中使用 obfs=tls,Potatso 不会导入它,因为无法连接到该服务器。
功能支持
| 功能 | 支持情况 |
|---|---|
| Snell v3、v4、v5 和 v6 | ✅ |
| Snell v1、v2 | ❌ |
| HTTP 混淆(v3 到 v5)、TLS 混淆(v3) | ✅ |
| v6 模式 | ✅ |
| 连接复用(v4 及更高版本) | ✅ |
| UDP(v3 及更高版本) | ✅ |
| v5 QUIC Proxy Mode | ❌ QUIC 改走 UDP |
| Snell 外层的 ShadowTLS、Restls 或 JLS | ❌ |
snell:// 链接 |
✅ |
每个受支持的版本,都用真实的 Snell 服务器测试过:Surge 的 snell-server v4、v5 和 v6,以及 v3 所用的 open-snell,因为 Surge 已不再提供 v3 服务端。
PSK、版本或混淆不一致时,服务器会关闭连接。如果 Snell 服务器始终连不上,请先检查这三项。
snell:// 链接
Snell 没有官方的链接格式。Potatso 按下面的形式读取和分享 Snell 服务器:
snell://psk@host:port?version=4&obfs=http&obfs-host=bing.com#name| 部分 | 说明 |
|---|---|
psk |
PSK,经百分号编码。 |
host |
服务器地址。IPv6 地址要放在方括号里,如 [2001:db8::1]。 |
port |
服务器端口。 |
version |
Snell 版本,缺省为 4。 |
obfs, obfs-host |
混淆及其主机名。 |
name |
可选。服务器在 Potatso 中的名称。 |
示例
每个示例都是要导入的链接。PSK 是 secret。
v4 服务器:
snell://secret@snell.example.com:8443?version=4#Basic使用 HTTP 混淆的 v4 服务器:
snell://secret@snell.example.com:8443?version=4&obfs=http&obfs-host=bing.com#HTTP