Сервер Snell описывается PSK (общим ключом) и версией, а при необходимости еще и обфускацией. Snell — прокси-протокол команды Surge. Версия клиента должна совпадать с версией сервера, поэтому сначала проверьте ее: это version в конфигурации Surge вашего провайдера или релиз 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. Все остальные сочетания версий не подключаются.
QUIC Proxy Mode в v5 — это способ, которым Surge ретранслирует трафик QUIC. Potatso вместо этого ретранслирует QUIC как любой другой трафик UDP, так что QUIC по-прежнему работает.
Snell v6 у Surge находится в бета-версии и может измениться так, что старые клиенты перестанут работать. Используйте на сервере ту версию, которую рекомендует ваш провайдер.
Обфускация
| Обфускация | v3 | v4, v5 | v6 |
|---|---|---|---|
| Нет | ✅ | ✅ | ✅ |
| HTTP | ✅ | ✅ | |
| TLS | ✅ | ❌ Серверы предлагают только HTTP |
Обфускация делает начало соединения похожим на HTTP-запрос или TLS-рукопожатие. Она должна совпадать с настройкой obfs сервера. Задайте хост обфускации — имя хоста, которое дает ваш провайдер: если его нет, Potatso использует bing.com, как Clash.
У сервера v6 обфускации нет. Он формирует свой трафик по PSK, и на вашем устройстве для этого ничего не нужно.
Режимы v6
| Режим | Поддержка |
|---|---|
default: шифрование и формирование трафика |
✅ |
unshaped: шифрование без формирования трафика |
✅ |
unsafe-raw: ни шифрования, ни формирования |
✅ |
Режим должен совпадать с настройкой mode сервера. unsafe-raw отправляет ваш трафик как есть и не проверяет PSK: используйте его только внутри другого защищенного туннеля.
Повторное использование соединений
Когда включено Повторно использовать соединения, Potatso оставляет соединение Snell открытым после завершения соединения с сайтом и использует его для следующего. Это экономит один круговой обмен. Повторное использование работает с v4 и новее. Серверы v3 никогда не используют соединение повторно, поэтому для v3 эта настройка не показывается.
UDP
Snell v3 и новее передают UDP внутри соединения Snell. Как и в Clash, UDP по умолчанию выключен. Включите «Ретрансляция UDP» в настройках сервера, если ваш сервер ретранслирует UDP. Конфигурация Surge включает его всегда, как и Surge.
С сервером v5 ответы UDP больше примерно 2,5 КБ приходят обрезанными: сервер отправляет их в форме, которую читает только Surge. Большая часть трафика UDP, например DNS, QUIC и звонки, использует пакеты меньшего размера. У сервера v4 или v6 такой проблемы нет.
Настройки Surge
Potatso импортирует строки snell конфигурации Surge:
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 |
❌ Игнорируется |
Potatso не импортирует строку, которой нужна одна из неподдерживаемых настроек, или obfs=tls с v4 и новее, потому что не смог бы подключиться к такому серверу.
Поддержка возможностей
| Возможность | Поддержка |
|---|---|
| Snell v3, v4, v5 и v6 | ✅ |
| Snell v1, v2 | ❌ |
| Обфускация HTTP (v3–v5), обфускация TLS (v3) | ✅ |
| Режимы v6 | ✅ |
| Повторное использование соединений (v4 и новее) | ✅ |
| UDP (v3 и новее) | ✅ |
| QUIC Proxy Mode в v5 | ❌ QUIC идет через UDP |
| ShadowTLS, Restls или JLS вокруг Snell | ❌ |
Ссылки snell:// |
✅ |
Каждая поддерживаемая версия проверена на настоящем сервере Snell: snell-server v4, v5 и v6 от Surge и open-snell для v3, поскольку 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Сервер v4 с обфускацией HTTP:
snell://secret@snell.example.com:8443?version=4&obfs=http&obfs-host=bing.com#HTTP