XTLS Vision, XHTTP, gRPC и WebSocket: что это в ключе VLESS и чем TLS отличается от Reality

В ключе VLESS три независимые настройки: протокол, защита (TLS или Reality) и транспорт (TCP, XHTTP, gRPC, WebSocket). Vision — режим для TCP, который прячет «TLS внутри TLS». XHTTP — новый транспорт Xray на обычных HTTP-запросах, ему на смену уходят gRPC и WebSocket.

На этой странице

    В ключе VLESS полно непонятных слов: tcp, xhttp, grpc, ws, reality, tls, xtls-rprx-vision. Это не разные протоколы, а настройки одного. Xray собирает соединение из трёх независимых частей: протокол (VLESS) — кто вы и куда идёт трафик; защита — TLS или Reality; транспорт — как именно байты едут по сети. Поверх может стоять режим flow — сейчас это Vision. Ниже — что значит каждое слово, чем TLS отличается от Reality, зачем нужны XHTTP и gRPC и что из этого держится в России.

    Из чего состоит ключ VLESS

    ЧастьПараметр в ключеВариантыЧто делает
    Протоколvless://VLESS (бывают VMess, Trojan, Shadowsocks)Кто вы (UUID) и куда направить соединение
    Защитаsecuritytls, reality, noneШифрование и то, как соединение выглядит снаружи
    Транспортtypetcp (raw), xhttp, grpc, ws, httpupgrade, kcpКак данные упакованы и едут по сети
    Режимflowxtls-rprx-vision или пустоСкрывает «TLS внутри TLS» и убирает двойное шифрование

    Слово «tcp» в ключе — это транспорт, который в Xray с осени 2024 года называется RAW: данные идут по одному обычному TCP-соединению без дополнительной упаковки. Подробно о самом VLESS и его ключе — VLESS и Reality: что это за протокол.

    TLS или Reality: в чём разница

    TLS — то же шифрование, что у любого сайта с замком в адресной строке. Для него нужен свой домен и сертификат на него. Плюс TLS — гибкость: соединение можно пустить через CDN или обратный прокси, и тогда сервер прячется за чужими адресами. Минус — у сервера свой сертификат и свой отпечаток TLS, по которым его можно изучить; Reality как раз это убирает.

    Reality — разработка команды XTLS, которую документация Xray называет «изменённой формой TLS, которая использует внешний вид и особенности рукопожатия целевого сайта как маскировку». По описанию на GitHub, Reality:

    • не требует своего домена и настройки TLS-сервера — сервер указывает на чужой сайт;
    • убирает отпечаток TLS самого сервера;
    • отправляет тех, кто не прошёл проверку, на настоящий целевой сайт — проверяющий видит его подлинный сертификат;
    • требует, чтобы целевой сайт был зарубежным, поддерживал TLS 1.3 и HTTP/2 и не перенаправлял на другой адрес.

    По документации, Reality работает только с транспортами RAW (TCP), XHTTP и gRPC. Через CDN его не пустишь: CDN сам завершает TLS со своим сертификатом, а смысл Reality — в чужом. Неуязвимым Reality не считают и сами исследователи: в феврале 2026 года на форуме исследователей цензуры net4people описали способ отличить сервер Reality от настоящего сайта по мелочам в обработке TLS.

    XTLS Vision (xtls-rprx-vision): что это

    Когда вы открываете сайт через прокси в TLS, внутри одного шифрованного соединения идёт рукопожатие второго — с самим сайтом. По размерам и порядку пакетов такое вложение можно узнать: это и есть проблема «TLS внутри TLS», которую исследователи давно умеют находить. Vision — ответ Xray на неё. По описанию разработчиков из октября 2022 года:

    • Выравнивает рукопожатие. Короткие пакеты внутреннего рукопожатия добиваются случайными данными до 900–1400 байт, чтобы по размерам не было видно, что внутри идёт ещё одно TLS.
    • Не шифрует второй раз. Если внутри TLS 1.3, после рукопожатия данные передаются как есть: они и так зашифрованы сайтом и снаружи выглядят одинаково. На Linux Xray ещё и копирует их напрямую средствами системы — меньше нагрузки на процессор.
    • Отключает QUIC в браузере. По умолчанию Vision перехватывает UDP на порт 443, чтобы браузер перешёл с HTTP/3 на обычный HTTPS через TCP. Есть вариант xtls-rprx-vision-udp443, который этого не делает.

    Vision работает только с транспортом RAW (TCP) и защитой TLS или Reality; с XHTTP, gRPC и мультиплексированием его не сочетают. До Vision в Xray были режимы XTLS Origin, Direct и Splice — их убрали в версии 1.8.0 в марте 2023 года.

    Что такое XHTTP

    XHTTP — транспорт, где данные идут обычными HTTP-запросами и ответами. История у него короткая:

    • Июнь 2024. В Xray появился SplitHTTP: получение — одним долгим запросом GET, отправка — множеством запросов POST. Так он проходил через CDN, которые не поддерживают WebSocket и gRPC.
    • Октябрь 2024. SplitHTTP переделали, по-настоящему разделили отправку и получение и переименовали в XHTTP.
    • Декабрь 2024. Разработчик Xray опубликовал разбор «XHTTP: Beyond REALITY». «Beyond» тут — «популярнее Reality», а не «вместо»: XHTTP можно использовать вместе с Reality.

    У XHTTP несколько режимов: packet-up — отправка отдельными запросами, самый совместимый; stream-up — отправка тоже потоком; stream-one — один запрос, где всё идёт в обе стороны. По умолчанию Xray выбирает сам: с TLS и HTTP/2 — stream-up, с Reality — stream-one, иначе — packet-up. Работает XHTTP поверх HTTP/1.1, HTTP/2 или HTTP/3, через CDN и Nginx, а отправку и получение можно пустить даже разными путями — например, одно через CDN, другое напрямую через Reality.

    Минус XHTTP — накладные расходы: в режиме packet-up каждый кусок данных — отдельный HTTP-запрос. На хорошей связи чистый TCP с Vision обычно быстрее.

    gRPC, WebSocket и HTTPUpgrade

    • gRPC — способ обмена данными от Google поверх HTTP/2. Документация Xray пишет, что его можно пустить через серверы с поддержкой HTTP/2, например Nginx, а мультиплексирование в нём встроено. Сейчас там же стоит совет: «переходите на XHTTP», и предупреждение, что сервисы gRPC рискуют попасть под активную проверку. С Reality gRPC работает.
    • WebSocket — самый старый способ пустить прокси через CDN. Документация Xray советует уйти с него на XHTTP, чтобы избавиться от заметной приметы — в рукопожатии WebSocket видно, что используется только HTTP/1.1. С Reality не работает.
    • HTTPUpgrade — облегчённый WebSocket: начало соединения как у WebSocket, а дальше без его лишних правил. Через CDN проходит так же, рекомендация та же — XHTTP.

    Часть старых транспортов из Xray уже убрали: HTTP/2 как отдельный транспорт — в декабре 2024 года, QUIC — осенью 2024-го. Если в старом ключе стоит type=h2 или type=quic, в свежем Xray-клиенте такой ключ может не заработать.

    Сравнение транспортов Xray

    ТранспортПоверх чегоС RealityЧерез CDNС VisionСтатус в Xraysing-boxHapp и другие Xray-клиенты
    RAW (tcp)TCPДаНетДаОсновнойДаДа
    XHTTPHTTP/1.1, HTTP/2, HTTP/3ДаДаНетРекомендуемый на смену gRPC и WebSocketНетДа
    gRPCHTTP/2ДаДаНетСоветуют перейти на XHTTPДаДа
    WebSocketHTTP/1.1НетДаНетСоветуют перейти на XHTTPДаДа
    HTTPUpgradeHTTP/1.1НетДаНетСоветуют перейти на XHTTPДаДа

    Про sing-box частый вопрос «sing-box xhttp»: в документации sing-box среди транспортов есть HTTP, WebSocket, QUIC, gRPC и HTTPUpgrade, а XHTTP и mKCP нет. Ключ с type=xhttp в sing-box не заработает — для него нужен клиент на ядре Xray, например Happ, v2rayNG или v2rayN: v2rayNG и v2rayN: что это и чем отличаются, sing-box или Happ: что выбрать.

    Какой транспорт держится в России

    Систематических замеров нет — есть датированные отзывы и наблюдения, и картина меняется от волны к волне.

    • Ноябрь 2025. На нескольких московских и региональных сетях стали обрывать VLESS с Reality и Vision поверх TCP, как только начинали идти данные. В обсуждении в репозитории Xray люди писали, что замена TCP на gRPC или XHTTP помогала; разработчик Xray предположил, что фильтр считает число одновременных соединений, а gRPC держит всё в одном. Были и отзывы, что через день отвалился и gRPC.
    • Февраль 2026. По наблюдениям автора статьи на Хабре, на проводных сетях стали массово ломать VLESS с Reality поверх обычного TCP: первые примерно 16 КБ проходят, дальше соединение «замерзает».
    • Май — июнь 2026. По той же статье, под новую волну попали и gRPC, и XHTTP с Reality, хотя XHTTP, по словам автора, «пока проходит». В июньском обсуждении в репозитории Xray пересказывали наблюдения, что фильтр «замораживает» соединения, если к одному имени сайта за минуту открывается больше трёх TLS-соединений, и что под это попадает даже XHTTP с настройками по умолчанию.

    Вывод: транспорт помогает выиграть время, но гарантии не даёт ни один. Сегодня проходит XHTTP, завтра фильтр учится и на нём. Решает не одна настройка, а то, как быстро сервис замечает поломку и меняет серверы и параметры. Сравнение протоколов целиком — Протоколы VPN: сравнение и что работает в России.

    Что выбрать

    • Обычный случай. TCP (RAW) с Reality и Vision: меньше всего накладных расходов и не нужен свой домен.
    • Запасной путь. XHTTP с Reality или с TLS: другой рисунок трафика, когда TCP начинают ломать.
    • Сервер нужно спрятать за CDN. XHTTP с TLS на своём домене. gRPC и WebSocket работают, но разработчики Xray советуют уходить с них.
    • Приложение — sing-box. XHTTP в нём нет; остаются TCP, gRPC, WebSocket и HTTPUpgrade.

    У Демьяныча

    Демьяныч работает на VLESS с Reality, и выбирать транспорт и flow вручную не нужно: всё приходит в подписке, а в sing-box общий автовыбор между серверами. Серверы проверяются из обычных российских сетей каждые 2 минуты; если сервер перестал отвечать, автоматика ставит запасной, а приложение получает его при обновлении подписки. Российские сайты идут напрямую, зарубежные — через наши серверы в Европе. Как это устроено — Как это работает: включил и забыл; попробовать можно 3 дня бесплатно, без карты.

    Частые вопросы

    Что такое xtls-rprx-vision?

    Это режим Vision для VLESS в Xray — параметр flow в ключе. Он добивает короткие пакеты рукопожатия до 900–1400 байт, чтобы по размерам не было видно «TLS внутри TLS», а после рукопожатия передаёт внутренний TLS 1.3 без второго шифрования. Работает только с транспортом TCP (RAW) и защитой TLS или Reality.

    Что такое XHTTP в VLESS?

    XHTTP — транспорт Xray, в котором данные идут обычными HTTP-запросами и ответами по HTTP/1.1, HTTP/2 или HTTP/3. Он вырос из SplitHTTP и в 2024 году получил нынешнее название. Работает с TLS и Reality и через CDN; разработчики Xray советуют переходить на него с gRPC и WebSocket.

    Что значит gRPC в VPN?

    gRPC — способ передачи данных от Google поверх HTTP/2. В Xray его используют как транспорт для VLESS: трафик похож на работу веб-приложения и может идти через Nginx или CDN. Сейчас документация Xray советует вместо gRPC переходить на XHTTP.

    Поддерживает ли sing-box XHTTP?

    Нет. В документации sing-box среди транспортов есть HTTP, WebSocket, QUIC, gRPC и HTTPUpgrade, а XHTTP нет. XHTTP понимают приложения на ядре Xray, например Happ, v2rayNG и v2rayN.

    Чем TLS отличается от Reality?

    Для TLS нужен свой домен и сертификат, зато соединение может идти через CDN. Reality своего сертификата не требует: сервер «одалживает» рукопожатие настоящего крупного зарубежного сайта, а тот, кто проверяет сервер без ключа, попадает на этот сайт. Через CDN Reality не работает.

    Что лучше: TCP, XHTTP или gRPC?

    Для скорости — TCP с Reality и Vision: у него меньше всего накладных расходов. XHTTP — запасной путь и способ пройти через CDN. gRPC в Xray уже не рекомендуют. В волнах блокировок в России отзывы расходятся, и ни один транспорт не даёт гарантии.

    Источники

    Не помогло?

    Напишите нам, разберёмся. Ускорит дело, если сразу приложить логи.