VPSРейтинг
VPN и сеть3 сентября 2026 · 13 мин

VLESS, WireGuard или Hysteria2: что выбрать в 2026

Задача у всех трёх одна — увести трафик через свой сервер. Различаются они тем, что видит оборудование оператора, и тем, во что это обходится по скорости, расходу заряда и настройке. Строго говоря, вариантов четыре: у WireGuard есть ещё и версия с изменённым видом пакетов, AmneziaWG, и разбирать их порознь нельзя. Идём по признакам, которые действительно решают, и в конце даём порядок выбора.

Кратко, если нет времени читать

  • WireGuard — простой и быстрый туннель, но узнаётся фильтрацией по первому же пакету. Через границу — только в изменённом виде, то есть AmneziaWG.
  • VLESS с Reality — маскировка под чужой настоящий сайт, работа поверх TCP на порту 443. Наиболее предсказуемый вариант при стабильном канале.
  • Hysteria2 — выигрывает там, где канал теряет пакеты, и не работает там, где оператор режет UDP.
  • Главный совет — не выбирать один. Второй протокол настраивается на том же сервере и ждёт своего часа выключенным.

1. Туннель или прокси: половина ответа здесь

Первое различие не про блокировки, а про устройство, и оно отсекает половину вариантов ещё до вопроса «что сейчас проходит».

WireGuard — сетевой туннель. Устройство получает адрес во внутренней сети сервера, и в эту сеть уходит весь трафик системы: браузер, почтовая программа, обновления, любое приложение, которое ни у кого не спрашивает разрешения. Одновременно становится видна и вторая сторона: с ноутбука можно открыть домашний накопитель по его внутреннему адресу, а с телефона — панель управления сервером, который наружу вообще не смотрит.

VLESS и Hysteria2 — прокси. Сервер не выдаёт устройству адрес и не соединяет сети. Он принимает отдельные соединения от программы-клиента и передаёт их дальше. Завернуть в него весь трафик системы можно — клиент поднимает у себя виртуальный сетевой интерфейс, в приложениях этот режим называется TUN или «Режим VPN», — но доступа к устройствам на стороне сервера это не даёт.

Вывод раздела

  • Нужен доступ к своим машинам — домашняя сеть, серверы, объединение офисов — это WireGuard, равного варианта среди прокси нет.
  • Нужен просто выход в интернет с другого адреса — годится любой из разобранных, и дальше выбор идёт по устойчивости к блокировкам.

2. Почему WireGuard узнаётся с первого пакета

Слабое место WireGuard — не шифрование, с ним всё в порядке. Дело в том, что начало соединения выглядит одинаково всегда. Спецификация протокола задаёт четыре вида сообщений, и у трёх из них размер задан жёстко — меняться ему негде:

СообщениеНомер типаРазмер
Начало рукопожатия, от клиента1ровно 148 байт
Ответ на рукопожатие, от сервера2ровно 92 байта
Ответ с меткой, когда сервер под нагрузкой3ровно 64 байта
Полезные данные4заголовок 16 байт плюс данные

Каждое сообщение начинается с одного байта — номера типа, — за которым идут три нулевых байта, зарезервированных спецификацией на будущее. То есть первые четыре байта самого первого пакета — это всегда 01 00 00 00, а длина этого пакета всегда 148 байт. Ответ сервера — всегда 02 00 00 00 и 92 байта.

Оборудованию фильтрации этого достаточно. Правило «пакет UDP длиной 148 байт, начинающийся с нужных четырёх байт, а в ответ пакет длиной 92 байта» не требует ни расшифровки, ни накопления статистики, ни разбора поведения. Соединение опознаётся раньше, чем по нему пройдёт первый байт полезных данных, и стоит это фильтру почти ничего.

Что из этого следует практически

У части российских операторов WireGuard в исходном виде через границу уже не поднимается: соединение либо не устанавливается, либо обрывается вскоре после подключения. Настройками это не лечится — узнаваемость заложена в формате пакетов. При этом внутри доверенной сети — между своими серверами, дома, между офисами — WireGuard остаётся лучшим выбором и ничем не хуже, чем был.

3. AmneziaWG: тот же WireGuard без узнаваемых пакетов

AmneziaWG — не новый протокол, а тот же WireGuard с изменённым внешним видом пакетов. Криптографическая часть не тронута. Изменено ровно то, за что цепляется фильтрация:

  • Мусорные пакеты в начале. Параметры Jc, Jmin и Jmax задают, сколько бессмысленных пакетов и какой длины отправить перед рукопожатием. Ровная последовательность «148, затем 92» перестаёт быть видна: в начале соединения летит пачка пакетов разной длины.
  • Случайная набивка. Параметры S1—S4 дописывают случайный префикс к четырём видам пакетов — началу рукопожатия, ответу, метке и данным, — и фиксированные длины пропадают вовсе.
  • Свои номера типов. Параметры H1—H4 заменяют номера 1, 2, 3 и 4 на числа из заданных диапазонов. Первые четыре байта перестают быть 01 00 00 00.
  • Чужая подпись перед рукопожатием. Параметры I1—I5 описывают до пяти пакетов, которые клиент отправляет первыми: в них кладут начало настоящего чужого протокола — например, первый пакет QUIC. Появились они не в последней версии: маскировка под чужие протоколы UDP есть с 1.5, в 2.0 её расширили.
  • Маскировка не только в начале. Версия 3.1 добавила защиту заголовков, добавочную набивку содержимого, случайные хвосты и настраиваемые интервалы служебных событий — то есть трафик меняет вид и в ходе передачи данных, а не только при подключении.

Совпадать на сервере и на клиенте обязаны набивка S1—S4, диапазоны заголовков H1—H4 и ключ защиты заголовков: без них сторона не разберёт пакет. Мусорные пакеты Jc, Jmin, Jmax и сигнатурные I1—I5 данных не несут, и документация советует задавать их только на клиенте. Пока маскировка выключена, конфигурация полностью совместима с обычным WireGuard. Как только включена, обычный клиент WireGuard подключиться уже не сможет: нужен клиент AmneziaWG.

Чего это стоит

  • Мусорные пакеты и набивка — это дополнительный трафик, который передаётся впустую. На мобильном тарифе с ограниченным пакетом это заметно.
  • Обычный WireGuard на сервере с Linux обрабатывается ядром системы: он входит в ядро начиная с версии 5.6, и это самый дешёвый по процессору вариант из всех. У AmneziaWG модуль ядра тоже есть, но его надо собирать под свой сервер; тот вариант, что встроен в панель, работает обычной программой и обходится дороже.
  • Клиенты нужны свои. Официальное приложение AmneziaWG есть для Android, iOS, macOS и Windows; на 3 сентября 2026 оно доступно и в российской витрине App Store.

С роутерами сложнее. Обычный WireGuard встроен в заводские прошивки распространённых моделей — Keenetic, MikroTik, ASUS, — и есть в OpenWrt. AmneziaWG в KeeneticOS поддерживается начиная с версии 5.1 Alpha 3 из канала разработчика, и только версии 1.5 и 2.0 — версию 3.1 роутер пока не понимает, о чём прямо сказано в документации Amnezia. На OpenWrt ставится всё, но руками.

Отдельную панель ради AmneziaWG поднимать не нужно. Панель 3X-UI начиная с версии 3.7, вышедшей 24 августа 2026, ведёт AmneziaWG собственными силами — без модуля ядра и без Docker, — то есть на том же сервере рядом с VLESS. Порядок действий в панели, разбор параметров маскировки и подбор MTU — в отдельной статье про AmneziaWG.

4. VLESS и Reality: чужой сертификат вместо своего

Reality — не шифрование и не транспорт, а способ начать соединение так, чтобы со стороны оно выглядело обращением к чужому настоящему сайту. Клиент начинает рукопожатие TLS с именем стороннего домена. Посторонний, который постучится на тот же порт, будет переслан на этот настоящий сайт и получит его подлинный сертификат и его страницу — ровно как при обычном заходе. Свой клиент узнаётся внутри рукопожатия по ключу.

Отсюда два практических свойства. Первое: ни своего домена, ни своего сертификата не нужно. Второе: признака, по которому такое соединение можно отличить в пакете, просто нет — заблокировать его по сигнатуре значит заблокировать сам сайт-маску.

Скрывает Reality не всё. Ритм и объём трафика, репутация подсети хостинга и число одновременных соединений к одному имени остаются на виду — именно по этим признакам его и ловят. Разбор механизма и установка — в нашей статье про VLESS с Xray и Reality. Для выбора важно другое: Reality работает поверх TCP, и ставят его на порт 443 — туда, где живёт обычный HTTPS. То есть по тому же протоколу и порту, что и обычные сайты. Это единственный из разобранных вариантов, который вообще не зависит от того, пропускает ли оператор UDP.

Слабое место — не протокол, а клиенты

Привычные бесплатные клиенты из российской витрины убраны: Happ, Streisand, V2Box и v2RayTun там не ищутся. Из бесплатных на 3 сентября 2026 в ней остаётся Karing, но он собран на ядре sing-box, а Reality-сервер по умолчанию принимает только клиентов на Xray-core 26.3.27 и новее: чтобы Karing подключился, в настройках точки входа придётся опустить «Мин. версию клиента», а это возвращает в сеть устаревшие отпечатки TLS. Без оговорок с российским аккаунтом ставится платный Shadowrocket за 249 ₽. То, что находится поиском по названиям убранных, выпущено посторонними издателями и к оригиналам отношения не имеет. На Android положение легче, но тоже неудобное: самого распространённого клиента, v2rayNG, в Google Play нет с 2025 года — файл берут из релизов на GitHub, а в магазине под тем же именем лежат чужие приложения. Для сравнения: официальные приложения WireGuard и AmneziaWG в российской витрине есть и бесплатны. Если протокол выбирается для человека, которому вы не будете объяснять, что такое подпись файла, это соображение может перевесить всё остальное.

5. Hysteria2: ставка на UDP

Hysteria2 работает поверх QUIC — это транспорт на базе UDP, тот самый, на котором работает HTTP/3 в браузерах. Из этого следуют все его сильные и все слабые стороны.

Что он умеет

  • Не сбавляет скорость при потерях. Обычные алгоритмы считают потерю пакета признаком перегрузки и снижают темп отправки. У Hysteria2 есть режим Brutal: скорость задаёте вы, и при потерях он не отступает, а добавляет отправку, чтобы вытянуть заданную. На канале, который теряет пакеты — мобильный интернет, дальняя линия, вечерняя нагрузка, — разница ощутима.
  • Притворяется обычным веб-сервером. Сервер Hysteria2 обязан отвечать как настоящий сервер HTTP/3. Тот, кто не прошёл проверку, получает либо страницу-заглушку, либо содержимое чужого сайта, если настроено проксирование.
  • Умеет менять порт. Если оператор режет конкретный порт UDP, сервер можно раздать диапазоном портов, и клиент будет их перебирать. На стороне сервера это делается правилами iptables или nftables.

Чего он стоит

  • Нужен домен и сертификат. Reality обходится чужим сайтом, Hysteria2 — нет: в требованиях официальной инструкции прямо стоит доменное имя, указывающее на адрес сервера. Сертификат сервер получает сам. Самоподписанный тоже можно, но тогда клиенту придётся либо отключить проверку сертификата, либо сверять его отпечаток вручную.
  • Маскировка и запутывание пакетов не работают вместе. У Hysteria2 есть режим Salamander: каждый пакет превращается в случайные байты. Документация проекта предупреждает, что при этом сервер перестаёт быть совместим с обычным QUIC и уже не работает как сервер HTTP/3. То есть либо посторонний видит нормальный веб-сервер, либо не видит ничего — а молчание на порту само по себе выглядит странно.
  • Это UDP — и это главный риск. Часть операторов ограничивает UDP или режет QUIC целиком. Тогда Hysteria2 не спасают ни маскировка, ни перебор портов: вопрос решается не настройками, а сменой протокола. Единственная оговорка — режим mimic, который надевает на пакеты фальшивый заголовок TCP, но он работает только на Linux, требует прав root и должен быть включён на всех клиентах сразу, так что для телефона это не вариант. Проверять UDP надо на своём канале, и проверка описана в следующем разделе.
  • Дороже по процессору. TCP обрабатывается ядром системы, QUIC — самой программой. В измерениях, опубликованных в журнале IEEE Transactions on Network and Service Management в 2022 году, при скачивании файла на 200 МБ QUIC занимал около 90 процентов процессора против примерно 50 у TLS поверх TCP при сопоставимой скорости. Реализация там другая, и переносить проценты на Hysteria2 буквально нельзя, но механизм тот же. На сервере это обычно неважно, на телефоне сказывается на нагреве и расходе заряда.

6. Сравнение по признакам, которые решают

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

ПризнакWireGuardAmneziaWGVLESS с RealityHysteria2
Что этоСетевой туннельСетевой туннельПроксиПрокси
ТранспортUDPUDPTCP, обычно порт 443UDP, поверх QUIC
Узнаётся по виду пакетовДа, по длине и первым байтамГотовой приметы нетПриметы нет, ловят по поведению и подсетиПриметы нет, но виден сам факт UDP
Нужен свой домен и сертификатНетНетНетДа
Канал с потерямиКак у обычного соединенияКак у обычного соединенияКак у обычного соединенияДержит заданную скорость
Доступ к устройствам на той сторонеЕстьЕстьНетНет
Приложение для iPhone с российским аккаунтомОфициальное, бесплатное, в магазине естьОфициальное, бесплатное, в магазине естьПлатный Shadowrocket; бесплатный Karing — с оговоркойБесплатный Karing или платные
Заводские прошивки роутеровKeenetic, MikroTik, ASUS; есть в OpenWrtKeenetic с 5.1 Alpha 3, версии 1.5 и 2.0Нет; на OpenWrt ставится рукамиНет; на OpenWrt ставится руками
Расход на телефонеНизкий, но пакет связи каждые 25 секундТот же плюс мусорные пакетыНизкийВыше остальных

Строка про расход на телефоне требует пояснения. WireGuard и AmneziaWG за клиентом, который сидит за преобразованием адресов — а это любой домашний роутер и любой мобильный оператор, — обязаны время от времени отправлять короткий пакет, иначе сопоставление в роутере протухнет и входящие пакеты перестанут доходить. Документация WireGuard рекомендует делать это раз в 25 секунд. У прокси такой обязанности нет: пока приложение молчит, в канал ничего не уходит.

7. Как выбрать: три сценария

1

Свои устройства и своя сеть

Домашний накопитель, сервер компании, несколько машин в одной сети, доступ к панели, которая не смотрит наружу. Здесь нужен туннель, а не прокси. Если трафик не проходит через фильтрацию — обычный WireGuard. Если соединение поднимается из России наружу — AmneziaWG.

2

Выход в интернет с зарубежного адреса, канал стабильный

Проводной домашний интернет, рабочее место, редкие переключения сети. Здесь выигрывает VLESS с Reality: TCP на порту 443, ни домена, ни сертификата, и полная независимость от того, что оператор делает с UDP.

3

Мобильный интернет, потери, поездки

Телефон в дороге, мобильный интернет вместо проводного, канал, который проседает вечером. Здесь Hysteria2 даёт то, чего не даёт никто, — но только если UDP у вашего оператора проходит. Проверка в следующем разделе занимает две минуты и делается до покупки сервера.

И честная оговорка: одного правильного ответа нет, потому что решает не протокол сам по себе, а конкретный оператор и конкретная подсеть, в которой стоит сервер. У соседа по дому с другим оператором картина может быть другой, и это нормально. А если настроенное соединение вдруг перестало проходить, сначала стоит понять, что именно сломалось: разбор по шагам — в статье о том, почему VLESS перестал работать.

8. Проверка: проходит ли у вас UDP

Это единственная проверка, которую стоит сделать до всего остального: она отвечает на вопрос, имеет ли смысл рассматривать Hysteria2. Делать её нужно на том устройстве и в той сети, где потом будет работать соединение — дома и на мобильном интернете результат бывает разным.

Проверка из браузера: сервер для неё не нужен

Откройте https://cloudflare-quic.com/ и обновите страницу два-три раза: браузер переходит на HTTP/3 не с первой загрузки, о чём сама страница и предупреждает. Страница на английском, нужная строка — первая под заголовком: your browser used HTTP/2 или your browser used HTTP/3.

  • Написано HTTP/3 — UDP на порт 443 у вас проходит, Hysteria2 имеет смысл пробовать.
  • Написано HTTP/2 и после нескольких обновлений не меняется — QUIC не проходит. Повторите в другом браузере: в Chrome и Firefox HTTP/3 включён по умолчанию, но настройку могли изменить. Если и там HTTP/2, ставьте на протокол поверх TCP.

Проверка своего порта: если сервер уже есть

Браузерная проверка говорит только про порт 443. Бывает, что на нём QUIC режут, а произвольный порт UDP проходит. Проверяется это двумя командами. Сначала на сервере открываем порт и запускаем приёмник — он просто печатает всё, что придёт:

На сервере, под root. Порт 39000 выбран произвольно
apt update && apt install -y netcat-openbsd

ufw allow 39000/udp
nc -u -l 39000

Если у провайдера есть свой межсетевой экран в панели управления, порт 39000 нужно открыть и там: иначе пакет не дойдёт до сервера и проверка обвинит оператора зря.

Терминал замолчит и будет ждать. Теперь на своём компьютере, с Linux или macOS, отправляем строку на этот порт. Вместо 203.0.113.10 подставьте адрес своего сервера:

На своём компьютере
echo proverka | nc -u -w1 203.0.113.10 39000

Если в окне сервера появилось слово proverka — UDP до сервера доходит. Если за несколько секунд не появилось ничего, попробуйте ещё раз: UDP не гарантирует доставку, и один потерянный пакет ещё ни о чём не говорит. Молчание после нескольких попыток означает, что UDP на этом порту не проходит. Закончив, остановите приёмник сочетанием Ctrl+C и закройте порт: ufw delete allow 39000/udp.

Как читать результат

Важнее первая проверка: Hysteria2 ставят именно на порт 443, где UDP выглядит как обычный HTTP/3 из браузера. Если 443 не проходит, а произвольный порт проходит, запустить Hysteria2 формально можно — но поток UDP на нестандартный порт заметен сам по себе, и надолго такого решения не хватит.

9. Запасной протокол и требования к серверу

Главный практический вывод статьи: выбирать один протокол не нужно. Настройте два сразу, вторым не пользуйтесь и держите его наготове. Когда основной перестанет проходить — а это происходит без предупреждения и обычно не вовремя, — переключение займёт минуту вместо вечера с переносом сервера.

Разумная пара — один вход поверх TCP и один поверх UDP: они отваливаются по разным причинам. Например, VLESS с Reality на порту 443 как основной и AmneziaWG как запасной. Панель 3X-UI версии 3.7 держит все три протокола на одном сервере как отдельные точки входа, каждую на своём порту. Порты нужно открыть в межсетевом экране — по одной строке на каждый:

UFW: строка с SSH идёт первой, иначе можно потерять доступ к серверу
ufw allow 22/tcp
ufw allow 443/tcp
ufw allow 47821/udp
ufw enable

На ufw enable система переспросит, что соединение по SSH может прерваться, — отвечайте y: правило для 22-го порта уже добавлено строкой выше.

Порт UDP здесь взят произвольно, и это осознанно: стандартный для WireGuard порт 51820 сам по себе подсказывает фильтрации, что за ним искать. Номер задаётся в настройках точки входа, и в правиле межсетевого экрана должен стоять тот же.

Требования к самому серверу у всех четырёх вариантов одинаковые и низкие: одно ядро, 1 ГБ памяти, 10 ГБ диска. Ни один из них не упирается в процессор при нагрузке одной семьи. Решают другие вещи — расположение сервера, ширина канала и репутация подсети, в которой он стоит. Виртуализация должна быть полной: на контейнерной модуль ядра для WireGuard не поднимется.

Если площадку нужно подобрать

VPN: от 1 ГБ RAM, 1 ядра и 10 ГБ SSD · Европа

Требования одинаковы для всех разобранных протоколов: решает не мощность, а расположение. Reality вдобавок нужна малая задержка до сайта-маски.

В каталоге под эти требования подходит 50 тарифов, самый дешёвый за 490 ₽/мес (HostKey, 1 ГБ, 40 ГБ SSD).

10. Частые проблемы

WireGuard подключается, но через минуту-другую трафик встаёт

Сначала проверьте простое: у клиента должен быть задан PersistentKeepalive = 25. Без него сопоставление адресов в домашнем роутере или у мобильного оператора протухает через минуту простоя, и входящие пакеты перестают доходить. Значение 25 секунд рекомендует сама документация WireGuard как подходящее для большинства межсетевых экранов. Если строка на месте, а обрывы остались и соединение идёт через границу — дело уже не в сопоставлении адресов, а в фильтрации: обычный WireGuard узнаётся по длинам пакетов, и лечится это только переходом на AmneziaWG.

AmneziaWG не подключается, хотя ключи верные

Первая причина — разные параметры маскировки на сторонах. Совпадать обязаны S1—S4, H1—H4 и ключ защиты заголовков; мусорные Jc, Jmin, Jmax и сигнатурные I1—I5 задаются на клиенте и совпадения не требуют. Вторая причина — устаревший клиент: панель выдаёт конфигурацию версии 3.1, а приложение или роутер понимают только 1.5 или 2.0 и на незнакомых полях спотыкаются. KeeneticOS версию 3.1 не поддерживает вовсе, поэтому для роутера конфигурацию придётся собирать в пределах версии 2.0.

Hysteria2 работал и перестал после перехода на другую сеть

Первое, что проверить, — проходит ли UDP у нового оператора. Как это сделать, описано выше. Если не проходит, ни перебор портов, ни режим Salamander делу не помогут: это ограничение канала, а не настроек. Переключайтесь на запасной вход поверх TCP — ровно ради такого случая он и настраивается заранее.

Hysteria2 подключается, но скорость ниже ожидаемой

Почти всегда в настройках указана скорость выше реальной. Документация проекта предупреждает об этом прямо: значение больше того, что канал действительно выдаёт, оборачивается перегрузкой канала и неустойчивым соединением. Ставьте измеренную скорость своего канала, а не ту, что написана в тарифе, и указывайте её честно в обе стороны.

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

Все четыре протокола упираются не в железо, а в расположение сервера и репутацию подсети. Российская площадка задачу не решает.

Провайдеры под VPN →