VLESS — это легковесный протокол без сохранения состояния, который используется в Xray-core для связи клиента и сервера. В пользовательском интерфейсе он обычно выглядит как строка vless://..., QR-код или профиль в приложении. Внутри такой профиль описывает не только сам протокол, но и адрес сервера, порт, UUID пользователя, транспорт, тип защиты соединения и дополнительные параметры.
Главная идея простая: VLESS отвечает за прокси-уровень и идентификацию пользователя, а не за весь сетевой стек. Поэтому фраза «у меня VLESS» неполная. Практически всегда нужно уточнять связку: например, VLESS + Reality + RAW, VLESS + TLS + WebSocket, VLESS + gRPC или VLESS + XHTTP.
#Что VLESS не означает
VLESS часто называют VPN-протоколом, потому что клиенты могут заворачивать через него весь трафик устройства в TUN-режиме. Точнее говорить так: VLESS — прокси-протокол, а VPN-поведение создают клиент, маршрутизация, DNS и режим перехвата трафика. Если приложение проксирует только браузер или отдельные домены, VLESS не становится полноценным системным VPN.
- VLESS не является отдельным приложением. Его реализуют Xray-core, совместимые клиенты и серверные панели.
- VLESS не является провайдером доступа. Один и тот же протокол может быть настроен надежно или плохо.
- VLESS сам по себе не гарантирует анонимность. Сервер видит исходящие подключения, а сайты видят IP сервера.
- VLESS без внешней защиты не стоит воспринимать как безопасный туннель: в современных профилях важны TLS, Reality или новые механизмы VLESS Encryption.
- VLESS не гарантирует обход блокировок. Устойчивость зависит от IP, SNI, транспорта, TLS-отпечатка, DNS, клиента и сети провайдера.
#Как VLESS связан с Xray
Xray-core — сетевое ядро, которое умеет принимать входящие подключения, отправлять исходящие подключения, применять маршрутизацию и работать с разными протоколами. VLESS в этой схеме является одним из inbound/outbound протоколов. На сервере он описывает список разрешенных клиентов, а на клиенте — куда подключаться и какие параметры использовать.
Официальная документация Project X подчеркивает две особенности VLESS: протокол не хранит состояние между запросами и использует UUID для аутентификации клиента. В отличие от старых схем, VLESS не зависит от точной синхронизации системного времени так, как это было важно для VMess. Это снижает класс ошибок, когда соединение ломается из-за времени на устройстве или сервере.
При этом VLESS остается только частью конфигурации. Если у сервера включен security=reality, клиент тоже должен понимать Reality. Если транспорт — WebSocket, на обеих сторонах должны совпадать путь и Host. Если используется gRPC, важны serviceName, HTTP/2 и корректный serverName. Несовпадение одного поля часто выглядит для пользователя как «VLESS не работает», хотя причина находится уровнем ниже.
VLESS
Переходите к настройке VLESS
Если вы уже понимаете, как работает VLESS, получите данные для подключения и добавьте их в совместимое приложение.
#VLESS vs VMess
VMess — более старый протокол из семейства V2Ray/Xray. В документации он описан как зашифрованный транспортный протокол. VLESS появился как более легкая и гибкая альтернатива: шифрование не жестко связано с самим протоколом, а выносится во внешний слой или отдельный механизм. Поэтому в VLESS-профилях долгое время типичным значением было encryption=none, но это не значит «соединение обязательно без защиты»: защиту обычно дает TLS или Reality на транспортном уровне.
Практическая разница для пользователя такая: VMess чаще встречается в старых инструкциях и клиентах, а VLESS чаще используется в новых Xray-сценариях с Reality, XTLS Vision, XHTTP и современными транспортами. VMess может быть проще найти в старых приложениях, но VLESS лучше отражает текущую архитектуру Xray: минимальный протокол плюс настраиваемый внешний слой безопасности.
- Аутентификация: оба используют идентификатор пользователя, но VLESS делает ставку на более простую схему с UUID.
- Шифрование: у VMess оно исторически встроено в протокол, у VLESS вынесено в настройки
encryptionи транспортную безопасность. - Время: VLESS не зависит от системного времени так, как VMess-сценарии.
- Совместимость: старый клиент может импортировать VMess, но не понимать Reality, XHTTP или новые поля VLESS.
#Reality, TLS и транспорты
VLESS не нужно смешивать с Reality. VLESS — это протокол прокси-уровня. Reality — вариант транспортной безопасности в Xray, который настраивается в streamSettings.security и realitySettings. TLS — другой вариант транспортной безопасности. Transport или network описывает способ передачи данных: RAW, WebSocket, gRPC, XHTTP, HTTPUpgrade, mKCP и другие.
Связка читается слоями. Например, VLESS + Reality + RAW + flow=xtls-rprx-vision означает: пользователь аутентифицируется через VLESS, соединение защищается Reality, данные идут через RAW/TCP-транспорт, а flow включает режим XTLS Vision. В варианте VLESS + TLS + WebSocket протокол тот же, но транспорт уже WebSocket, а защита — обычный TLS. Эти профили нельзя взаимозаменять простым переключением названия протокола.
Reality-профиль обычно содержит sni, fp, pbk, иногда sid и spx. TLS-профиль чаще зависит от домена, SNI, ALPN и проверки сертификата. WebSocket добавляет path и host. gRPC добавляет serviceName и иногда authority. XHTTP добавляет свои path, host, mode и extra. Чем сложнее связка, тем важнее импортировать профиль целиком, а не переписывать поля вручную.
#Какие поля есть в VLESS-профиле
Типовая ссылка выглядит как URL: vless://uuid@host:port?type=...&security=...&encryption=...#name. Стандарт sharing link требует, чтобы это был корректный URL, а значения параметров были правильно экранированы. На практике пользователь чаще видит не все поля сразу, а только те, которые нужны конкретной схеме.
uuidилиid— идентификатор пользователя. Если он отличается от серверного, аутентификация не пройдет.hostиport— адрес и порт сервера. IP может быть доступен, но домен нужен для TLS/SNI.encryption— настройка шифрования VLESS. Для классических профилей обычноnone; это не заменяетsecurity.security— нижний слой защиты:none,tlsилиreality.type— транспорт: RAW/TCP, WebSocket, gRPC, XHTTP, HTTPUpgrade и другие варианты.flow— режим управления потоком, чаще всего пустой илиxtls-rprx-visionв Reality/TLS-сценариях.sni— имя сервера для TLS или Reality. Ошибка в SNI часто ломает рукопожатие.fp— TLS ClientHello fingerprint, например chrome, если клиент поддерживает uTLS.pbk— публичный ключ Reality. Для Reality он обязателен.sid— shortId Reality. Может быть пустым, но должен соответствовать серверной конфигурации.path,host,serviceName,authority— параметры конкретного транспорта.
#Безопасность и ограничения
Безопасность VLESS-профиля определяется всей схемой, а не словом VLESS в начале ссылки. Важны актуальная версия клиента и ядра, корректная проверка сертификата или Reality-параметров, отсутствие публичной публикации UUID, разумная DNS-настройка и понятная маршрутизация. Если профиль передан третьими лицами, владелец сервера технически может видеть метаданные подключений и управлять правилами выхода в интернет.
Не стоит включать параметры вроде небезопасной проверки сертификата только потому, что «так заработало». Такое решение может скрыть настоящую ошибку: неправильный домен, устаревший клиент, неверный SNI или подмененный профиль. Если клиент предлагает импортировать ссылку, безопаснее импортировать ее как есть и затем проверять поля с администратором профиля, а не собирать новый профиль по догадкам.
Для приватности также важны DNS и режим маршрутизации. Если приложение работает как локальный прокси, часть программ может идти мимо него. Если включен TUN, нужно проверить, какие домены исключены, где резолвится DNS и нет ли split tunneling для чувствительных приложений. VLESS не исправляет утечки, которые появились на уровне клиента или операционной системы.
#Что проверять, если VLESS не работает
- Поддержка клиента. Убедитесь, что приложение и bundled core поддерживают Reality, XHTTP, нужный flow и новые параметры ссылки.
- Совпадение транспорта. RAW, WebSocket, gRPC и XHTTP несовместимы между собой без изменения серверной конфигурации.
- UUID. Один лишний символ или другой пользовательский id означает отказ в аутентификации.
- SNI и домен. Для TLS/Reality адрес подключения, SNI и сертификат или Reality-настройки должны соответствовать схеме.
- Reality-поля. Проверьте
pbk,sid,fpиspx. Старые клиенты могут молча игнорировать часть параметров. - WebSocket/gRPC path. Неверный
path,hostилиserviceNameчасто дает таймаут, хотя сервер доступен по порту. - DNS и маршрутизация. Если подключение есть, но сайты не открываются, проблема может быть в DNS, правилах routing, TUN-режиме или исключениях приложений.
- Сеть провайдера. Иногда профиль работает в одной сети и ломается в другой. Это не доказывает, что «сломался VLESS»: отличаться могут блокировки IP, фильтрация TLS, MTU, IPv6 или DNS.
Итог: VLESS лучше понимать как компактный и гибкий протокол внутри Xray, а не как самостоятельную гарантию скорости, безопасности или обхода ограничений. Правильный вопрос звучит не «VLESS хороший или плохой», а «какая полная связка VLESS, transport, security, flow, DNS и routing используется и поддерживает ли ее мой клиент».