VMess
Что это
VMess (V-Mess) — оригинальный прокси-протокол проекта V2Ray, представленный в 2015 году. Первый прокси-протокол, сделанный специально для обхода GFW/DPI с шифрованием прямо в протоколе. Сегодня полу-legacy: у него есть последователь — VLESS, а его шифрование сегодня считается избыточным (лучше делегировать TLS).
Как работает
- Клиент и сервер знают общий UUID + Alter ID
- Клиент отправляет заголовок, содержащий UUID + timestamp (±30 сек)
- Сервер валидирует
- Данные шифруются AES-128-CFB (старый) или AES-128-GCM / ChaCha20-Poly1305 (AEAD)
Проблема: заголовок и шифрованные данные имеют детектируемую структуру. DPI и ТСПУ могут распознать VMess-хэндшейк.
Проблемы VMess
- Timestamp-based auth — часы клиента и сервера должны быть синхронны (±30 сек). Проблемы, когда время дрифтует
- Alter ID — исторически, для «размытия» подписи. Уже давно устарел (deprecated с 2022), но старые конфиги ещё используют
- Заметность DPI — сигнатура VMess-заголовка выявляется active probing-ом
- Двойное шифрование с TLS — VMess шифрует, а сверху ещё TLS шифрует. Избыточно, дороже по CPU
- Не поддерживает XTLS-Vision — flow control только у VLESS
AEAD-режим
С 2022 VMess перешёл на AEAD (Authenticated Encryption with Associated Data): GCM/Poly1305. Alter ID стал не нужен, но всё равно принимается для совместимости. Это стабилизировало VMess, но фундаментальные проблемы остались.
Когда использовать
- Легаси-конфиги — если у тебя годами работает VMess-сервер, менять не обязательно, но лучше
- Совместимость со старыми клиентами (Shadowrocket до 2020 не умел VLESS)
Для новых конфигов — VLESS + Reality или Hysteria2.
Транспорты
Как и VLESS, VMess работает поверх любого транспорта: TCP, WebSocket, gRPC, mKCP, HTTPUpgrade.
В РФ
VMess жив, но детектится ТСПУ на голых конфигурациях. С обфускацией транспорта (WebSocket через Cloudflare, gRPC + TLS) работает нормально. Однако VLESS + Reality — заведомо лучше в 2026.