Что такое DPI-блокировка VPN и как она работает
DPI-блокировка VPN — это фильтрация на уровне содержимого пакетов, при которой оборудование оператора смотрит не только на адрес и порт, а на саму структуру трафика и решает, похож ли он на VPN. Если похож — соединение режут, замедляют или сбрасывают по таймауту.
В России такую фильтрацию массово выполняют ТСПУ — технические средства противодействия угрозам, установленные у операторов связи. Это отличает DPI от старых способов блокировки: тут уже неважно, какой у вас IP и какой домен в SNI — система реагирует на узнаваемый «отпечаток» протокола.
Поэтому ответ на «почему мой VPN перестал работать» часто звучит так: сервер жив, маршрут есть, но между вами и ним стоит ТСПУ, которое научилось распознавать именно этот протокол. Ниже разберёмся, как это устроено и какие протоколы такую проверку проходят, а какие — нет.
Коротко
- DPI — это разбор содержимого пакетов, а не только адресов и портов.
- ТСПУ ищет «отпечатки» VPN-протоколов: первый пакет handshake, длины, тайминги.
- Открытые WireGuard, OpenVPN UDP, IPsec/L2TP детектируются проще всего.
- Маскированные протоколы (VLESS+REALITY, XTLS-Vision, Shadowsocks-2022) держатся лучше.
- Блокировка по DPI выглядит как «подключение есть, но интернет умер» или как обрыв через пару секунд.
- Проверить, виноват ли DPI, проще всего сменой протокола на тот же сервер.
Как ТСПУ распознаёт VPN: основные техники
Сам термин DPI (Deep Packet Inspection) означает «глубокая инспекция пакетов». Простой файрвол смотрит на адрес и порт. DPI заглядывает дальше — в содержимое и в поведение потока. Для блокировки VPN важны несколько разных слоёв.
Сигнатуры handshake
Большинство VPN-протоколов в первом же пакете выдают себя характерной структурой. У WireGuard это короткий UDP-пакет фиксированного типа Initiation. У OpenVPN — заголовок с типом сообщения и идентификатором сессии. ТСПУ хранит эти шаблоны и помечает соединение как VPN ещё до того, как пройдёт первый полезный байт.
Анализ TLS и SNI
Если VPN маскируется под HTTPS, DPI смотрит на ClientHello: какие шифры предлагаются, какой порядок расширений, какой SNI (имя домена в первом пакете). По набору признаков становится понятно, что это не браузер, а, например, OpenVPN over TLS или старый VMess.
Поведенческий анализ
Даже когда содержимое внутри шифра не разобрать, DPI оценивает поведение: длины пакетов, паузы, симметрию трафика. Постоянный поток одинаковых по размеру пакетов в обе стороны — типичная подпись туннеля. Браузер так не ходит.
Чем DPI отличается от блокировки по IP, SNI и DNS
Блокировка по IP — самая грубая: оператор просто чёрный список адресов. Блокировка по DNS — отказ резолвить домен. Блокировка по SNI — обрыв соединения, если в открытом ClientHello встретилось запрещённое имя. DPI — следующий уровень: даже если IP «чистый», SNI замаскирован, а DNS подменён, фильтрация всё равно сработает, если в трафике узнают сигнатуру VPN.
Как понять, что именно сломалось
| Симптом | Возможная причина | Что проверить |
|---|---|---|
| VPN коннектится, но через 5–10 секунд сайты не открываются | DPI распознал handshake и режет данные | Сменить протокол на маскированный (REALITY, AmneziaWG) |
| Подключение зависает на «handshake / authenticating» | UDP блокируется или сигнатура палится сразу | Попробовать TCP-вариант протокола, другой порт |
| Работает по Wi-Fi, не работает с мобильного | ТСПУ оператора режет именно этот протокол | Проверить блокировку у второго оператора |
| Тот же сервер раньше работал, теперь нет | Обновили сигнатуры на ТСПУ | Сменить протокол / порт, проверить статус сервиса |
| Все сайты тормозят, но открываются | Замедление, а не полный блок | Замерить скорость без VPN и сравнить |
| VPN-клиент пишет «нет подключения к серверу» | Сервер мёртв или порт закрыт | Проверить доступность IP и порта снаружи |
Как проверить прямо сейчас
Чтобы отделить «у меня лично» от «не работает в принципе», нужны замеры с разных операторов и регионов. Freedom Checker как раз это и делает: запускает однотипные проверки сервисов и протоколов с пробников в нескольких городах и операторах, чтобы было видно, где доступ есть, а где нет.
Если ваш протокол массово недоступен у одного оператора, но работает у другого — почти наверняка вмешался DPI/ТСПУ. Если протокол вообще не отвечает нигде — скорее проблема с сервером или с конкретным VPN-сервисом.
Сбой или блокировка?
Сбой — это когда сервер упал, провайдер где-то накосячил с маршрутизацией, или у конкретного VPN-провайдера авария. Признаки: проблема появилась резко, исчезает сама через час-два, у части пользователей работает, у части нет — без привязки к оператору.
DPI-блокировка ведёт себя иначе: симптомы стабильны, чётко привязаны к одному-двум операторам, появляются после волны новых правил ТСПУ и не уходят сами. Если переподключение к другому VPN-серверу того же провайдера ничего не даёт, а смена протокола на маскированный — даёт, это почти наверняка фильтрация трафика.
На что обратить внимание
- Откройте настройки клиента и посмотрите, какой именно протокол используется.
- Попробуйте альтернативу: WireGuard → AmneziaWG / OpenVPN, VMess → VLESS+REALITY.
- Сравните поведение на мобильном интернете и на домашнем Wi-Fi разных провайдеров.
- Проверьте, помогает ли смена порта (443 / 8443 / нестандартный).
- Не путайте таймаут установки соединения и таймаут после соединения — это разные точки отказа.
- Если на одном протоколе режут у всех операторов — это уже сигнатурная блокировка, не региональный сбой.
- Не доверяйте «всегда рабочим» VPN из рекламы: завтра сигнатуру добавят в фильтр и список устареет.
Вывод
DPI — это не «список плохих сайтов», а распознавание самого факта VPN-трафика по его форме. Поэтому даже идеально настроенный туннель к чистому серверу может не работать: ТСПУ ловит соединение по сигнатуре. Чем сильнее протокол маскируется под обычный HTTPS, тем дольше он держится.
Если ваш VPN внезапно перестал работать — не спешите менять сервис. Сначала проверьте, какой именно протокол режут, и сделайте это по нескольким операторам.