Если вы подключали VPN за последние пару лет, то почти наверняка видели строку, начинающуюся с vless://. Разберём, что за ней стоит и почему именно этот протокол вытеснил привычные.
Коротко: что это
VLESS — протокол передачи данных внутри туннеля. Его особенность в том, что он предельно простой: сам по себе он почти ничего не шифрует и не маскирует, а только описывает, кто вы и куда хотите попасть. Всё остальное — шифрование и маскировка — навешивается сверху отдельными слоями.
Звучит как недостаток, а на деле это главное преимущество. Старые протоколы несли маскировку внутри себя, и когда способ переставал работать, менять приходилось протокол целиком. У VLESS слои меняются по отдельности.
Чем он отличается от OpenVPN и WireGuard
OpenVPN и WireGuard создавались, чтобы соединить два офиса через интернет, а не чтобы прятаться. Они честно выглядят как VPN — и именно поэтому их научились определять и блокировать: трафик узнаётся по характерным признакам, даже не читая содержимого.
VLESS в связке с современным транспортом выглядит как обычное посещение сайта по HTTPS. Отличить его от того, как ваш браузер открывает любую страницу, заметно труднее.
При чём тут Xray
Xray — программа, которая умеет говорить на VLESS и ещё нескольких протоколах. Она стоит и на сервере, и внутри клиентского приложения. Incy и Happ — оболочки над одним и тем же ядром с разным интерфейсом, поэтому одна ссылка подписки работает в обоих и при переходе переносить ничего не нужно.
Протокол и транспорт — разные вещи
Здесь чаще всего и путаются. VLESS — это протокол: он отвечает за то, кто вы и куда хотите попасть. А то, во что этот протокол завёрнут по дороге, называется транспортом, и вариантов у него несколько: обычный TCP, WebSocket, gRPC. Поверх транспорта идёт ещё слой шифрования — как правило TLS.
Отсюда и берутся сочетания вроде «VLESS поверх WebSocket с TLS». Важно, что слои независимы: транспорт можно поменять, не трогая ни протокол, ни вашу ссылку подписки.
Что это меняет для вас
Ничего из перечисленного не нужно настраивать руками, и в этом весь смысл. Сервис подбирает связку протокола и транспорта на своей стороне и меняет её, когда прежняя перестаёт работать, а вы продолжаете пользоваться той же ссылкой в том же приложении.