VLESS XHTTP: что это за транспорт и когда он нужен
XHTTP — это транспорт в Xray-core: способ, которым VLESS переносит ваш трафик внутри обычных HTTP-запросов. Раньше он назывался SplitHTTP. Сам протокол при этом остаётся VLESS, меняется только «упаковка». Ниже — как XHTTP устроен, какие у него режимы и когда его стоит выбрать вместо других вариантов.
VLESS XHTTP: что это простыми словами
XHTTP — это транспортный слой, построенный на HTTP. Разработчики Xray описывают его как первый «родной» транспорт проекта, который можно использовать вместе с REALITY. Идея в том, чтобы прокси-сессия выглядела как обычная работа с веб-сервером: запросы и ответы, а не один долгий закрытый поток.
История короткая. В 2024 году появился SplitHTTP: загрузка данных на сервер делилась на отдельные запросы, а скачивание шло потоком. Позже автор добавил полноценное разделение загрузки и скачивания и переименовал транспорт в XHTTP. Внутреннее название в коде осталось прежним, поэтому в старых конфигах можно встретить splithttp.
Чем транспорт отличается от протокола
Протокол отвечает за то, что передаётся (у VLESS это авторизация и пересылка данных), а транспорт — за то, как это доставляется по сети. Безопасность (TLS или REALITY) — третий, отдельный слой. Поэтому «VLESS + XHTTP» и «VLESS + WebSocket» — один и тот же протокол в разной упаковке. Общий разбор — на странице что такое VLESS.
Какие режимы есть у XHTTP
Режимов три, и это главное, что нужно знать при настройке:
| Режим | Как работает | Где пригождается |
|---|---|---|
| packet-up | Загрузка — серия отдельных POST-запросов, скачивание — GET | Самая широкая совместимость, в том числе с CDN и обратными прокси |
| stream-up | Загрузка — один потоковый POST, скачивание — отдельный GET | Когда нужен поток при работе через CDN |
| stream-one | Один двунаправленный POST | Прямое соединение; часть CDN ограничивает его сильнее |
По умолчанию стоит режим auto: он сам выбирает вариант по типу защиты соединения. Для TLS с HTTP/2 это stream-up, для REALITY — stream-one, в остальных случаях — packet-up. Обычному пользователю вручную выбирать режим не нужно: это настраивает сервис.
Зачем XHTTP нужен
Он решает две задачи. Первая — маскировка: запросы выглядят как обычный веб-трафик, а случайное дополнение заголовков (padding, по умолчанию 100–1000 байт) убирает фиксированный «отпечаток» длины. Вторая — работа за CDN и обратными прокси, где долгие потоковые соединения часто буферизуются или обрываются. Разделение на запросы помогает пройти там, где другие транспорты спотыкаются.
Ещё одна возможность — разделить загрузку и скачивание: по описанию разработчиков, они могут идти через разные адреса и даже разные CDN. Для обычного подключения это скорее техническая деталь, но она объясняет, почему XHTTP считают гибким.
XHTTP, REALITY и WebSocket: в чём разница
Эти названия часто путают, потому что они стоят в одном списке в приложении. На самом деле REALITY — это слой защиты, а XHTTP и WebSocket — транспорты. В Vetryx доступны режимы VLESS REALITY, XHTTP и WebSocket, а также протокол Hysteria2.
- REALITY — маскировка рукопожатия под обычное TLS-соединение с настоящим сайтом.
- WebSocket — давно привычный транспорт, поддерживается почти везде.
- XHTTP — более новый транспорт на HTTP-запросах; хорошо подходит там, где важна работа через промежуточные узлы.
Какой лучше — зависит от сети. Если один не подключается, смена другого часто решает проблему. Обзор по всем вариантам — в разделе протоколы Vetryx. А если вас интересует не VLESS, а UDP-протокол, прочитайте про Hysteria2 (он работает по UDP).
Как включить XHTTP в Vetryx
Настраивать сервер самому не нужно: варианты уже есть в вашей подписке.
- Скопируйте ссылку подписки в личном кабинете или в Telegram-боте Vetryx.
- Установите приложение и нажмите «Вставить из буфера» или «Добавить подписку». На Windows и Android — приложение Vetryx, на iPhone, iPad и Mac — Incy или Happ.
- Подключитесь. Если соединение не работает, обновите подписку и выберите другой вариант из списка.
- На мобильном интернете, который работает только по «белым спискам», выбирайте серверы «Анти-глушилки» с пометкой LTE. Подробнее — на странице белые списки.
Серверы «Анти-глушилки» доступны на тарифах «Обход блокировок», «VPN + Обход» и «Семейный». Трафик на всех тарифах безлимитный. Сравнить тарифы можно на странице тарифов, а проверить сервис — 24 часа бесплатно, без карты.
Какие версии HTTP использует XHTTP
По умолчанию клиент работает по HTTP/2, если включены TLS или REALITY, и по HTTP/1.1 в остальных случаях. Если в настройках указать только h3, используется QUIC и HTTP/3. Сервер по умолчанию слушает TCP и принимает трафик HTTP/1.1 и HTTP/2. Для HTTP/3 разработчики советуют ставить перед сервером настоящий Nginx или Caddy: они сами принимают H3 от клиента и передают дальше по H1 или H2.
Практический вывод для пользователя простой: XHTTP чаще всего идёт по TCP и выглядит как обычный HTTPS-трафик. Если ваша сеть сильно ограничивает UDP, XHTTP на HTTP/2 для этого менее чувствителен, чем протоколы на UDP. Но это зависит от конкретной сети, и универсального ответа здесь нет.
Когда XHTTP не поможет
Никакой транспорт не гарантирует, что соединение будет работать всегда: результат зависит от оператора, региона и времени. Если не подключается ни один вариант, проверьте обычный интернет без VPN, обновите приложение и подписку и посмотрите что делать, если VPN не подключается. Если не помогло — напишите в поддержку: отвечает человек из команды, а не бот.
Технические подробности — в описании XHTTP от разработчиков Xray и в репозитории проекта.
Частые вопросы
XHTTP и SplitHTTP — это одно и то же?
Да, по сути. SplitHTTP — прежнее название транспорта. После добавления разделения загрузки и скачивания его переименовали в XHTTP, а в старых конфигах и коде может встречаться прежнее имя.
XHTTP — это отдельный протокол вместо VLESS?
Нет. Это транспорт: способ доставки данных. Протокол остаётся VLESS, а поверх могут работать TLS или REALITY.
Нужно ли выбирать режим packet-up или stream-up вручную?
В Vetryx — нет: подписка уже содержит готовые варианты. Режимы важны тем, кто сам разворачивает сервер, и по умолчанию XHTTP выбирает режим автоматически.
Что выбрать, если XHTTP не работает?
Обновите подписку и попробуйте другой вариант: REALITY, WebSocket или Hysteria2. На LTE с белыми списками используйте серверы «Анти-глушилки».