Протоколы

Обновлено · Команда SomonVPN

WireGuard: скорость и лёгкая криптография

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

WireGuard появился в 2016 году как ответ на разросшиеся IPsec и OpenVPN: несколько тысяч строк кода вместо сотен тысяч, современная криптография без устаревших режимов и подключение за доли секунды. В 2020-м протокол приняли в ядро Linux — редкий знак качества для сетевого кода.

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

Год появления
2016
Транспорт
UDP
Шифрование
ChaCha20-Poly1305
Есть в SomonVPN
Нет — вместо него AmneziaWG

Как работает WireGuard

Клиент и сервер заранее знают публичные ключи друг друга. Рукопожатие построено на фреймворке Noise: один пакет от клиента, один ответ сервера — и туннель готов. Дальше данные летят короткими UDP-пакетами, а привязка сессии к ключам, а не к IP-адресу, позволяет клиенту менять сеть без переподключения: вышел из Wi-Fi в LTE — туннель жив. Вся конфигурация умещается в десяток строк — приватный ключ, ключ сервера, адреса, — отсюда популярность протокола у энтузиастов и на домашних роутерах.

Почему рукопожатие чувствительно к качеству канала

Рукопожатие WireGuard укладывается в два UDP-пакета фиксированного формата, а параметры транспорта жёстко заданы спецификацией и не настраиваются. На стабильном канале это плюс — подключение занимает доли секунды. На загруженной мобильной сети запаса прочности не хватает: потеря одного пакета срывает всю процедуру, и её приходится начинать заново. Со стороны пользователя это выглядит как вечное «подключение…».

Сравнение с соседями по нише

КритерийWireGuardAmneziaWGOpenVPN
СкоростьМаксимальная, работает в ядреТа же криптография и скоростьЗаметно ниже, работает в userspace
Параметры транспортаЖёстко заданы спецификациейНастраиваются под сетьЗаданы собственным форматом OpenVPN
Стабильность на мобильных сетях регионаНизкаяВысокаяНизкая
Есть в SomonVPNНетДаНет

Что вместо WireGuard в SomonVPN

AmneziaWG — тот же WireGuard по криптографии и скорости, но с настраиваемыми параметрами транспорта: количество служебных пакетов и размеры заголовков задаются конфигурацией и подбираются под сеть. Для сетей, где UDP проходит плохо, у SomonVPN есть протоколы поверх TCP — VLESS Reality и XHTTP; там, где QUIC работает хорошо, к ним добавляется TUIC. Smart Connect перебирает их автоматически и оставляет тот, который стабильнее на текущей сети. Проверить, как это работает у вашего оператора, можно за бесплатный пробный день — карта для него не нужна.

Если конфиг WireGuard от другого сервиса перестал подключаться на мобильном интернете, а по Wi-Fi работает — дело обычно в особенностях мобильной сети, а не в сервере.

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

WireGuard действительно быстрее OpenVPN?

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

Почему WireGuard нестабильно подключается на мобильном интернете?

На загруженных мобильных сетях рукопожатие WireGuard часто не доходит до конца независимо от сервера: протокол укладывается в два UDP-пакета и болезненно переносит потери. По домашнему Wi-Fi тот же конфиг чаще всего работает нормально. В SomonVPN эту задачу закрывает AmneziaWG с настраиваемым транспортом.

AmneziaWG — это тот же WireGuard?

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

Можно ли подключиться к SomonVPN сторонним WireGuard-клиентом?

Нет. Приложение SomonVPN для Android само управляет протоколами, включая AmneziaWG, и переключает их через Smart Connect. На iPhone, Windows и macOS используется подписочная ссылка для клиента Happ.

Попробуйте WireGuard в деле

В приложении SomonVPN протокол выбирается в один тап — или доверьте выбор Smart Connect.