MTProxyHub
Ко всем статьям
8 мин

Что такое DPI: как провайдеры блокируют интернет

Разбираем Deep Packet Inspection изнутри: уровни OSI, сигнатурный и поведенческий анализ, и почему MTProto так сложно заблокировать.

Что такое DPI: как провайдеры блокируют интернет

Когда Telegram блокируют в стране, пользователи обычно замечают это внезапно: приложение работало — и вдруг перестало. За этим «вдруг» стоит конкретная технология, которую используют интернет-провайдеры по всему миру — Deep Packet Inspection, или DPI. Понять, как она работает, — значит понять, почему MTProxy так хорошо с ней справляется.

Немного об архитектуре: уровни OSI

Чтобы объяснить DPI, нужно вспомнить модель OSI — семиуровневую схему того, как данные передаются по сети.

Обычные файрволы работают на уровнях 3–4: смотрят на IP-адреса и порты, и принимают решение пропустить или заблокировать пакет. Это грубо и быстро, но легко обойти — достаточно сменить IP или порт.

DPI работает иначе. Это «рентген» для пакетов, который анализирует трафик вплоть до уровня 7 — содержимого самого приложения. Он не просто смотрит, куда идёт пакет, но и что у него внутри.

Как DPI анализирует трафик

DPI использует несколько методов анализа, которые могут применяться одновременно.

Сигнатурный анализ

Каждый протокол оставляет в потоке данных характерные «отпечатки» — сигнатуры. Например:

  • TLS-соединение всегда начинается с сообщения ClientHello определённой структуры
  • SSH-сессия открывается строкой SSH-2.0-...
  • Старые версии MTProto имели специфический паттерн в первых байтах хендшейка

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

Эвристический анализ

Иногда сигнатуры отсутствуют или зашифрованы. Тогда в дело вступает эвристика — набор правил вида «если X, то, вероятно, это Y». Например:

  • Соединение активно в ночное время с регулярными интервалами → похоже на VPN «keepalive»
  • Пакеты одинакового размера, отправляемые с фиксированной задержкой → паттерн стриминга

Поведенческий анализ

Самый сложный метод. Система не анализирует отдельные пакеты, а смотрит на весь поток соединения во времени:

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

Где стоит оборудование DPI

В России, Иране и Китае оборудование для глубокой инспекции пакетов установлено непосредственно на точках обмена трафиком (IXP) и у крупных операторов связи. В России это происходит в рамках закона о «суверенном интернете» (ТСПУ — технические средства противодействия угрозам).

Ключевые особенности современных DPI-систем:

  • Работают на скорости линии (line-rate) — анализируют миллиарды пакетов без задержек
  • Поддерживают State Full Inspection — помнят контекст соединения
  • Обновляют базы сигнатур централизованно, часто несколько раз в сутки

Почему DPI не может просто заблокировать всё зашифрованное

Логичный вопрос: если DPI не может расшифровать трафик — почему не заблокировать весь непонятный трафик?

Ответ прост: 90%+ трафика в интернете зашифровано. HTTPS, банкинг, облачные сервисы, корпоративные VPN — всё это «непонятный» зашифрованный трафик. Блокировка всего нераспознанного = отключение от современного интернета.

Именно поэтому Telegram и другие сервисы используют мимикрию — маскировку своего трафика под «разрешённые» протоколы.

Как MTProto обходит DPI

Разработчики Telegram знали о проблеме DPI с самого начала. MTProto 2.0 проектировался с учётом нескольких защитных механизмов:

Padding (добавление мусорных байт) К каждому пакету добавляется случайное количество случайных байт. Размер пакетов становится непредсказуемым — DPI не может строить сигнатуры на основе размеров.

Обфускация Структура пакетов MTProto в обфусцированном режиме выглядит как случайный набор байт. Нет явных маркеров начала соединения, характерных для конкретного протокола.

Fake TLS Современные MTProxy-серверы оборачивают соединение в имитацию TLS-хендшейка. Для DPI это выглядит как обычное HTTPS-соединение к легитимному сайту.

Подробнее о том, как работает Fake TLS, читайте в отдельной статье.

Что DPI видит при подключении через MTProxy с Fake TLS

С точки зрения DPI-системы — это обычный зашифрованный HTTPS-трафик к известному домену. Нет поводов для блокировки.

Ограничения защиты MTProto

Честности ради стоит упомянуть, что MTProto не является серебряной пулей.

  • Статистический анализ: при длительном наблюдении за соединением опытные системы могут определить, что трафик «слишком похож на TLS, но не TLS»
  • IP-блокировки: блокировать сам IP прокси-сервера проще, чем анализировать трафик — именно поэтому важно менять адреса. На MTProxyHub мы автоматически ротируем узлы каждые 60 секунд
  • Активное зондирование: некоторые системы пробуют «ответить» на подозрительное соединение — если сервер не реагирует как настоящий HTTPS, его блокируют

Узнайте подробнее о рисках публичных прокси и о том, как IPv6 помогает обойти массовые блокировки.

Технические подробности о протоколах — в официальной документации: MTProto на core.telegram.org и описание MTProxy. О природе DPI подробно пишет Cloudflare в своём блоге.

FAQ

Может ли DPI читать содержимое зашифрованных сообщений? Нет. DPI анализирует метаданные и паттерны трафика, но не может расшифровать данные, защищённые современными алгоритмами. Telegram дополнительно шифрует содержимое сообщений до отправки.

Почему провайдеры не блокируют весь зашифрованный трафик? Потому что это заблокирует HTTPS — весь банкинг, интернет-магазины, соцсети. Политические и экономические последствия неприемлемы.

Помогает ли смена DNS от DPI? Нет. DPI работает на уровне самих пакетов, а не DNS-запросов. Смена DNS поможет обойти DNS-блокировку, но не DPI.

Как padding в MTProto помогает обойти DPI? MTProto добавляет случайное количество «мусорных» байт к каждому пакету, делая размер непредсказуемым. DPI не может строить стабильные сигнатуры на основе размеров пакетов.


Если вы хотите не просто понимать, как это работает, но и пользоваться стабильным прокси прямо сейчас — откройте список рабочих MTProxy. Все узлы обновляются каждые 60 секунд.