Схемы ссылок: vless://, vmess://, ss://, trojan://, socks://, hy2://
- Автор
- Екатерина Лебедева, редактор раздела knowledge base
- Проверил:
- Артём Волков
- Проверено:
- Опубликовано:
- , обновлено
- Версия гайда:
- 1.0
Коротко
Happ принимает ссылки шести протоколов — vless://, vmess://, trojan://, ss://, socks:// и hysteria2:// (hy2://) — а также служебные ссылки happ:// для подписок и маршрутизации. У большинства схема одна: протокол, учётные данные, адрес сервера и параметры.
У пяти из шести протоколов параметры читаются прямо из адресной строки: логин или UUID, хост, порт и параметры через амперсанд. Ссылка vmess:// в распространённом варианте устроена иначе — это JSON-объект, целиком закодированный в Base64. После символа # у любой схемы может идти название сервера, а следом через ? — дополнительное описание в Base64. Отдельная группа схем начинается с happ:// и служит не для подключения к серверу напрямую, а для служебных действий: добавления зашифрованной подписки или профиля маршрутизации.
Общий список схем
| Схема | Формат | Особенность |
|---|---|---|
vless:// | vless://UUID@хост:порт?параметры#имя | Параметры читаются напрямую из строки |
vmess:// | vmess:// + JSON в Base64 (распространённый вариант) | Нужно раскодировать, чтобы увидеть поля |
trojan:// | trojan://пароль@хост:порт?параметры#имя | Похож на VLESS, но проверка по паролю, а не UUID |
ss:// | ss://метод:пароль@хост:порт#имя (варианты с Base64) | Shadowsocks; часть поля может быть в Base64 |
socks:// | socks://логин:пароль@хост:порт, с Base64 логина или целиком | Три равнозначных варианта записи |
hysteria2://, hy2:// | hysteria2://[auth]@хост:порт/?параметры | Порт по умолчанию 443, поддержка мультипорта |
Условные примеры (значения не настоящие):
vless://00000000-0000-0000-0000-000000000000@example.com:443?type=tcp&security=reality&sni=example.org&flow=xtls-rprx-vision#Server-1hysteria2://password@example.com:443/?obfs=salamander&obfs-password=example#Server-2Как устроена ссылка
У пяти протоколов из шести — VLESS, Trojan, Shadowsocks, SOCKS5 и Hysteria2 — общая логика построения адреса: протокол, учётные данные (UUID, пароль или логин с паролем), адрес сервера, порт и параметры через & после знака вопроса. Разбор параметров именно каждого протокола — на его отдельной странице.
Ссылка VMess устроена иначе: после vmess:// в распространённом формате идёт не читаемая строка, а JSON-объект с полями вроде хоста, порта и UUID, целиком закодированный в Base64.
Метаданные после символа #
Часть ссылки после # не участвует в подключении, а только подписывает сервер в интерфейсе:
- имя сервера — примерно до 30 символов, показывается в списке серверов;
- serverDescription — отдельный параметр после имени, значение в Base64, заменяет технический текст вроде «VLESS» на текст от провайдера.
Изменить эти поля можно и вручную в настройках сервера, если подписка не скрывает настройки серверов.
Особые схемы happ://
Кроме протоколов подключения, Happ понимает несколько служебных ссылок с собственной схемой happ://. Они не описывают сервер, а выполняют действие внутри приложения:
| Ссылка | Что делает |
|---|---|
happ://crypto… | Добавляет зашифрованную подписку — адрес и настройки серверов скрыты |
happ://routing/add/{base64} | Добавляет профиль маршрутизации в список |
happ://routing/onadd/{base64} | Добавляет и сразу активирует профиль маршрутизации |
happ://routing/off | Отключает маршрутизацию |
Полный список диплинков Happ и то, как их генерировать, — на странице диплинки Happ, а устройство самого профиля маршрутизации — на странице профили маршрутизации. История версий шифрования ссылок happ://crypto — на странице Happ Crypt: версии шифрования.
Главное
- Happ понимает шесть протокольных схем: vless://, vmess://, trojan://, ss://, socks:// и hysteria2:// (или hy2://).
- У VLESS, Trojan, Shadowsocks, SOCKS5 и Hysteria2 параметры подключения читаются из самой строки ссылки после знака вопроса.
- Ссылка vmess:// в распространённом формате — это не читаемая строка, а JSON-конфигурация, закодированная в Base64.
- Имя сервера после # ограничено примерно 30 символами, а расширенное описание передаётся отдельным параметром в Base64.
- Схемы happ://crypto и happ://routing/… не подключают к серверу напрямую, а добавляют зашифрованную подписку или профиль маршрутизации.
Частые вопросы
Можно ли по одному виду ссылки понять, какой это протокол?
Да, первая часть ссылки до символов :// однозначно называет протокол: vless, vmess, trojan, ss для Shadowsocks, socks и hysteria2 или его короткий вариант hy2. Единственная схема, которую нельзя прочитать глазами без декодирования, — vmess://: в распространённом формате это JSON в Base64, и без раскодирования по одному виду строки понятны только протокол и то, что дальше идёт закодированный блок.
Почему ссылка socks:// бывает в трёх разных видах?
Формат SOCKS5 в Happ поддерживает и открытый вид `socks://логин:пароль@хост:порт`, и вариант с закодированными в Base64 только учётными данными, и полностью закодированную в Base64 строку целиком. Такое разнообразие сложилось исторически в экосистеме прокси-ссылок: разные генераторы ссылок кодируют разные части адреса, а Happ распознаёт все три варианта одинаково.
Что находится после символа # в ссылке?
Обычно это название сервера — то, что видно в списке серверов Happ, длиной примерно до 30 символов. После названия через отдельный параметр может идти дополнительное описание в Base64, которое заменяет технический текст под именем сервера, например слово «VLESS», на текст от провайдера. Оба поля не влияют на подключение — это только подписи для интерфейса.
Ссылки happ://routing и happ://crypto — это тоже протоколы?
Нет, это служебные схемы самого приложения, а не протоколы подключения к серверу. `happ://routing/add/{base64}` и `happ://routing/onadd/{base64}` добавляют профиль маршрутизации, `happ://routing/off` отключает маршрутизацию, а `happ://crypto…` добавляет зашифрованную подписку. Подробнее о диплинках Happ — на отдельной странице про эту тему, а о профилях маршрутизации — на странице «Профили маршрутизации».
Что делать, если Happ не распознал ссылку протокола?
Сначала проверьте, что ссылка скопирована целиком: обрезанная строка теряет часть параметров после знака вопроса или символ # с именем сервера. Если ссылка полная, но приложение всё равно показывает ошибку, вероятная причина — опечатка в параметрах или недопустимые символы, которые не входят в формат конкретного протокола. Разбор такой ошибки — на странице «Конфигурация не валидная».
Упомянутые темы
Похожие материалы
Разделы по теме
Источники
- Документация Happ: примеры ссылок и параметры — обращение 28 сентября 2026
- Документация Happ: Hysteria 2 — обращение 28 сентября 2026
- Документация Happ: маршрутизация — обращение 28 сентября 2026
- Документация Happ: зашифрованная ссылка — обращение 28 сентября 2026