ТСПУ и DPI: как работает блокировка трафика и почему VPN перестают работать

Автор: Редактор блога HubHide VPN

Один и тот же вопрос я слышу лет пять подряд, в разных видах. «Почему вчера работало, а сегодня нет?» «Почему у друга на том же сервисе всё поднимается, а у меня нет?» «Провайдер что, читает мой трафик?»

Ответ на все три в одном месте — в устройстве оборудования между вами и остальным интернетом, и если понять, что оно видит и по каким признакам решает, то перестаёт быть загадкой и внезапная неработоспособность, и то, почему одни протоколы выживают годами, а другие ложатся за неделю. Разберу механику: как работает DPI, что такое ТСПУ и почему DPI блокировка выглядит то как обрыв, то как тормоза. Без инструкций «как обойти», это не тот жанр. Но с объяснением принципов, которого обычно не хватает.

Кое-где придётся упростить, и я буду отмечать, где именно. И сразу оговорюсь: тема мне нравится сама по себе, и в паре мест меня наверняка занесёт в подробности, которые вам не пригодятся. Терпите или пролистывайте.

DPI: чем глубокая инспекция отличается от фильтрации по IP и DNS

Резать трафик можно на трёх уровнях, и они принципиально разной глубины.

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

По DNS. Чуть умнее. Устройство спрашивает «какой адрес у такого-то сайта», а провайдер отвечает не тем, что есть на самом деле, и вы попадаете либо на заглушку с объяснением, либо просто в никуда. Обходится сменой DNS на шифрованный — поэтому способ, к слову, и потерял актуальность.

Глубокая инспекция пакетов. Совсем другой уровень. Оборудование смотрит не только на заголовки «откуда-куда», но и на содержимое пакета: структуру, размер, порядок следования, тайминги. Из этого складывается решение — пропустить, замедлить, оборвать.

И тут надо снять главный миф, потому что он мешает понимать остальное. DPI-блокировка не означает, что кто-то читает вашу переписку. Зашифрованный трафик остаётся зашифрованным, вскрыть современный TLS на потоке невозможно — по крайней мере, никто не показывал, что это делается в промышленных масштабах, а я за темой слежу внимательно. DPI анализирует не содержимое, а метаданные и почерк. Разница между этими двумя вещами огромная. Вернее, она принципиальная, и прочувствовать её стоит до того, как читать дальше.

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

ТСПУ: где стоит железо и что оно видит

ТСПУ — технические средства противодействия угрозам. Оборудование в сетях операторов связи, управляемое централизованно, с отдельного пульта, а не самим оператором.

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

Что коробка видит на потоке:

  • Адрес источника и адрес назначения: кто с кем.
  • Порты и протокол транспортного уровня.
  • Имя сайта в открытом виде при установке защищённого соединения — поле SNI, о нём ниже.
  • Параметры рукопожатия TLS: набор шифров, расширения, их порядок.
  • Размеры пакетов, интервалы, соотношение исходящего и входящего.
  • Длительность соединения и объём.

Чего не видит: содержимого. Внутри шифр, и тут оборудование бессильно. Скажем так, оно слышит интонацию, но не слова.

[Изображение: схема прохождения пакета — клиент, сеть оператора, узел с ТСПУ, дальше внешний интернет]

Потому вся конструкция и построена вокруг косвенных признаков. Что не дочитать — то опознают по форме.

Как определяют VPN: четыре группы признаков

Тут начинается самое содержательное. Блокировка трафика провайдером в случае VPN держится на четырёх опорах, каждая из которых работает независимо.

Сигнатуры протокола

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

TLS-фингерпринт

История тоньше, и именно она убивает наивную идею «спрячусь на 443 порту, там же весь HTTPS». Признаюсь, я сам когда-то так думал и был уверен, что этого хватит.

Когда клиент устанавливает TLS-соединение, он отправляет пакет с перечислением того, что умеет: список поддерживаемых шифров, набор расширений, их порядок, версии. Набор у разных программ разный: у браузера один, у мобильного приложения другой, у библиотеки, на которой написан VPN-клиент, третий. Из этих параметров считают хеш, известный как JA3 или JA4, — получается отпечаток. И вот ключевой момент: TLS-фингерпринт позволяет отличить браузер от VPN-клиента даже при одинаковом порте 443. Трафик идёт туда же, куда весь HTTPS, шифрование то же, порт тот же. А отпечаток чужой. Всё равно что прийти на проходную в корпоративной форме, но говорить с акцентом, которого у сотрудников не бывает.

Хорошие реализации отвечают подделкой отпечатка под популярный браузер. Гонка на этом уровне идёт постоянно и, честно говоря, довольно изящная. Мне она нравится больше всего остального в этой истории.

SNI-инспекция

SNI — поле в начале TLS-рукопожатия, где клиент открытым текстом сообщает, к какому имени подключается. Нужно оно затем, что на одном адресе живёт много сайтов, и сервер должен понять, чей сертификат предъявлять.

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

Тайминги и размеры пакетов

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

[Изображение: диаграмма «что видит DPI» — слева зашифрованная полезная нагрузка, справа открытые метаданные: SNI, размеры, интервалы, отпечаток]

Активное зондирование: когда сервер идут проверять

Пассивного наблюдения иногда мало: соединение подозрительное, а улик нет. Тогда включается второй механизм.

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

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

Active probing — причина, по которой домашние конфигурации живут недолго, а грамотно собранная инфраструктура держится годами, и разница тут не в протоколе, а в деталях обвязки, которые, на мой взгляд, всё и решают.

Почему OpenVPN и обычный WireGuard детектируются

Ни один из них не задумывался как средство маскировки, и это не претензия, а констатация: их делали, чтобы безопасно соединять сети, и задача спрятаться от наблюдателя в требованиях не стояла.

OpenVPN. Рукопожатие имеет узнаваемую структуру с характерными полями, и режим со скрытым ключом общей формы обмена не меняет. Ходит чаще по UDP, а UDP на нестандартных портах и сам по себе привлекает внимание, потому что нормальному домашнему трафику там делать особо нечего. Перевод на TCP 443 помогает, но с чужим TLS-отпечатком не сильно.

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

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

Маскировка: обфускация, мимикрия и Reality

Теперь про то, как на это отвечают. Три поколения подходов: каждое следующее появлялось, когда предыдущее переставало справляться.

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

Мимикрия под обычный HTTPS. Следующий шаг: не прятаться, а притворяться. Трафик заворачивается в настоящий TLS, идёт на 443 порт, предъявляет настоящий сертификат. Снаружи — посещение сайта. Тут и появляются требования к отпечатку и к тому, чтобы на домене действительно что-то лежало, иначе зондирование всё испортит.

Reality. Развитие идеи, и довольно неожиданное. Вместо убедительной подделки соединение маскируется под обращение к реальному стороннему сайту — крупному, чужому, заведомо незаблокированному. Сертификат в рукопожатии предъявляется его, настоящий. Решит система проверить адрес зондированием — запрос дойдёт до настоящего ресурса и получит нормальный ответ.

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

[Изображение: упрощённая схема работы Reality — рукопожатие с подстановкой сертификата стороннего сайта и проверка активным зондированием, которая ничего не находит]

Работает ли это вечно? Нет, конечно. Появится новый признак — появится новый ответ. Так было со всем предыдущим, и я не вижу причин, по которым на этот раз вышло бы иначе.

Блокировка по подсетям: почему падают целые хостинги

Есть и грубый инструмент — на случай, когда тонкие не справляются. Если на хостинге обнаруживается много узлов, под нож уходит не отдельный адрес, а целый диапазон — сотни и тысячи адресов разом, и вместе с ними ложатся посторонние сервисы, снимавшие серверы по соседству: чей-нибудь магазин, корпоративная почта, панель умного дома. Побочный ущерб тут не баг, а принятая цена. И объясняет он сразу две вещи, которые обычно считают случайностью.

Первая: почему сервис, работавший полгода, отваливается в один день у всех. Никто ничего не сломал — выкосили подсеть.

Вторая: зачем нужна подписка вместо ключа. Когда адреса уходят пачками, подписка подтягивает новые узлы сама, а ключ превращается в бесполезную строку.

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

Что это значит при выборе протокола

Сведу в таблицу. Оценки — моя субъективная картина на сентябрь 2026, через год она может выглядеть иначе.

Протокол Опознаётся ли DPI Устойчивость к зондированию Скорость Когда имеет смысл
OpenVPN UDP Да, легко Низкая Средняя Сети без фильтрации, старое оборудование
OpenVPN TCP 443 Да, по отпечатку и профилю Низкая Ниже средней Совместимость любой ценой
WireGuard Да, по первому пакету Низкая Максимальная Нет фильтрации, нужна скорость
WireGuard с обфускатором Частично Средняя Высокая Умеренная фильтрация
VLESS + TLS с доменом Сложно Средняя, зависит от обвязки Высокая Есть свой домен и сайт на нём
VLESS + XTLS-Reality Очень сложно Высокая Высокая Жёсткая фильтрация, белые списки

Критерии, по которым я бы выбирал, если убрать маркетинг:

  1. Маскировка заложена в протокол, а не приделана сбоку.
  2. TLS-отпечаток подделывается под настоящий браузер.
  3. Активное зондирование не даёт результата.
  4. Нет своего домена и сертификата, которые можно внести в списки.
  5. Узлы раскиданы по разным хостингам, а не свалены в один стог.
  6. Есть подписка, подтягивающая новые адреса без вашего участия.

Пять первых пунктов про технологию, шестой про сервис, и он важнее, чем кажется: я бы даже сказал, что в 2026 году именно он решает чаще любого протокола, потому что протокол выбирают один раз, а узлы меняются постоянно.

Если сжать всё сказанное

Провайдер не читает ваш трафик. Он смотрит на форму, ритм и отпечаток, и этого хватает, чтобы отличить туннель от браузера, не вскрывая ни байта. ТСПУ стоит выше вашего устройства, поэтому всё, что делается на телефоне — перезагрузки, смена DNS, сброс настроек, — на решение не влияет. OpenVPN и WireGuard проектировались для безопасности, а не для незаметности, и в сетях с фильтрацией это различие оказывается решающим. Выживает то, что выглядит как обычный HTTPS и выдерживает проверку активным зондированием. Сегодня это VLESS с XTLS-Reality. Завтра, возможно, что-то другое, и меня это не смущает: так устроена гонка брони и снаряда, которая идёт уже не первое десятилетие и вряд ли закончится на нашем с вами веку.

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

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

Что такое ТСПУ?

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

Как DPI определяет VPN?

По четырём группам признаков: сигнатуре протокола в первых пакетах, отпечатку TLS-рукопожатия, имени сайта в поле SNI и статистике потока — размерам пакетов, интервалам, соотношению направлений. Содержимое остаётся зашифрованным: анализируют метаданные и почерк, а не сами данные.

Видит ли провайдер, что я использую VPN?

Сам факт зашифрованного соединения виден всегда, как виден любой HTTPS. А туннель это или обычный сайт — вопрос маскировки. У OpenVPN и WireGuard ответ очевиден с первого пакета. У VLESS с Reality соединение выглядит как обращение к стороннему сайту, и отличить его от браузерного трафика заметно сложнее. Что вы открываете внутри туннеля, провайдер не видит в любом случае.

Какой протокол не детектируется DPI?

Протокола с гарантией «не детектируется никогда» не существует, и обещать такое некорректно. На сегодня лучший практический результат даёт VLESS с XTLS-Reality: маскировка под реальный сторонний сайт, подделка отпечатка и устойчивость к зондированию. Через год картина может измениться, и за этим нужно следить.

Вам будет интересно