Skip to content

Snell

iPhone 版 Potatso 支持的 Snell 版本、混淆、Surge 设置和功能,包括 v3 到 v6、连接复用和 UDP。

Updated 以 Markdown 查看

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 没有官方的链接格式。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
导航

Type to search…

↑↓ navigate↵ selectEsc close