К контенту
habrforever
ЖИВА #basics 2026 · ~5 мин чтения

Wildberries, Ozon и Сбер начали блокировать VPN-пользователей: как приложения определяют, что у вас включен VPN — актуализация 2026

оригинал на Хабре habr.com/…/1021392
снимок Wayback не сохранялся
статус на Хабре (ноябрь 2026) доступна
права © автор, переиздание в архивных целях с указанием источника

Wildberries, Ozon и Сбер начали блокировать VPN-пользователей: как приложения определяют, что у вас включен VPN

Архивное переиздание с актуализацией. Оригинал опубликован на Habr (2026), автор — неизвестен. оригинал доступен на Habr по состоянию на ноябрь 2026. Ниже — редакция ноября 2026: что работает сейчас, что изменилось и как правильно повторить рецепт сегодня. Полный текст оригинала — в конце, без купюр.

TL;DR — версия 2026

Теория «VPN vs Proxy vs Tor» не изменилась с 2019 года; изменился выбор: в 2026 для РФ — AmneziaWG или VLESS+REALITY, BYE-DPI для лёгких случаев, и никогда — «бесплатный VPN» из стора.

Оригинал — лучший разбор «что вообще есть что» своего времени. Картинка не поменялась: прокси — это «только веб, без шифрования выше уровня», VPN — «весь трафик, L3-туннель», Tor — «луковая цепочка, медленно, но анонимно». Изменился контекст: ТСПУ (DPI-боксы) стоят у всех крупных российских провайдеров и умеют резать VPN-хендшейки WireGuard, OpenVPN и «голый» Shadowsocks, в 2026 году вступили в силу поправки о «поиске экстремистских материалов», по которым поисковики и мессенджеры обязаны скрывать доступ к запрещённому, а раздача инструкций по обходу начинает приравниваться к «пропаганде средств обхода» — и выбор «какой VPN поднять себе» стал вопросом выживания канала, а не вкуса.

Статус оригинала

Выбор схемы под задачу (ноябрь 2026)

  • «Открыть заблокированный сайт» → ByeDPI/Zapret/SpoofDPI (без VPN вообще);
  • «YouTube не тормозит» → то же + выбор провайдера, где ТСПУ мягче;
  • «Личный VPN на все случаи» → AmneziaWG на своём VPS (просто) или VLESS+REALITY (маскировка 5-го уровня);
  • «Анонимно почитать» → Tor с Snowflake;
  • «Корпоративный удалённый доступ» → OpenVPN/TLS или Headscale/Tailscale — вне этой войны;
  • «Смартфон» → AmneziaVPN/Hiddify self-hosted.

Про что в 2026 думать обязательно (чего не было в оригинале)

  • утечки DNS: туннель без своего резолвера = «туда же, только с флагом»;
  • IPv6-обход: у части провайдеров v6 не фильтруется — и это и выход, и дыра;
  • kill switch: WireGuard AllowedIPs = 0.0.0.0/0 + fw, иначе при обрыве трафик уходит напрямую;
  • юрридикация VPS: сервер в РФ = читать чужие письма; Нидерланды/Финляндия/Германия — норм по латентности;
  • MTU/фрагментация: GSO/CDN-маршруты любят ломать большие пакеты — 1280 спасает.

Что изменилось с 2026 года

  • PPTP/L2TP-разделы устарели навсегда
  • появились протоколы маскировки (Reality, AWG), которых в оригинале не существовало
  • у провайдеров появились ТСПУ и «замедлители» отдельных сервисов
  • VPN-обзоры и гайды с российских сайтов удаляются — сохраняйте локально

Чек-лист 2026

  • понимать, что именно вы обходите: IP-блок, DPI, SNI или geo
  • выбрать схему по таблице выше
  • свой DNS внутри туннеля
  • kill switch на клиенте
  • копия гайдов — в офлайн-архив

Вердикт

Как учебник «что такое VPN» статья не устареет никогда. Как практический гайд — замените раздел выбора протокола на таблицу 2026 выше, и это снова лучшая вводная на русском языке.


ОРИГИНАЛ СТАТЬИ (без изменений)

В прошлой статье я разбирал, как операторы связи определяют VPN через DPI и ТСПУ. Но за последнюю неделю ситуация изменилась радикально: теперь VPN определяют не только операторы, но и сами приложения — Wildberries, Ozon, ВкусВилл, Шоколадница и другие.

Wildberries показывает плашку: «У вас включен VPN? Лучше его отключить». Ozon выдаёт «Что-то с интернетом». Карточки товаров не грузятся, фото пропадают, оформить заказ нельзя. Выключаешь VPN — всё работает.

Это не случайный баг. Минцифры в конце марта провело закрытое совещание с 20+ компаниями (Яндекс, Сбер, VK, Ozon, Wildberries, Авито, X5, HeadHunter, ЦИАН и другие) и выдало методичку: к 15 апреля ограничить доступ пользователям с VPN. Кто не выполнит — рискует вылететь из «белых списков».

Давайте разберём, как технически приложение на вашем телефоне определяет, что VPN включен. Это другой уровень по сравнению с DPI на стороне оператора.

Раньше vs сейчас: кто определяет VPN

До апреля 2026 всё работало так: ТСПУ на стороне оператора анализирует трафик и блокирует VPN-протоколы. Приложения ничего не знали.

Сейчас добавился второй эшелон: приложение само определяет VPN и ограничивает функциональность. Даже если ТСПУ пропустило ваш трафик — приложение может вас поймать самостоятельно.

Это принципиально меняет расклад. DPI можно обойти обфускацией протокола. Приложение на вашем телефоне — обойти сложнее, потому что оно работает внутри устройства.

Метод 1: проверка сетевых интерфейсов (Android)

Самый простой и распространённый способ. На Android любое приложение может проверить наличие активного VPN-интерфейса через ConnectivityManager или NetworkInterface:

// Способ через ConnectivityManager
val cm = getSystemService(Context.CONNECTIVITY_SERVICE)
    as ConnectivityManager
val activeNetwork = cm.activeNetwork
val caps = cm.getNetworkCapabilities(activeNetwork)
val isVpn = caps?.hasTransport(
    NetworkCapabilities.TRANSPORT_VPN
) == true

// Способ через NetworkInterface
val interfaces = NetworkInterface.getNetworkInterfaces()
while (interfaces.hasMoreElements()) {
    val iface = interfaces.nextElement()
    if (iface.name.startsWith("tun") ||
        iface.name.startsWith("ppp")) {
        // VPN обнаружен
    }
}

VPN-приложения создают виртуальный сетевой интерфейс — обычно tun0. Его наличие — прямой признак VPN. Не нужен root, не нужны специальные разрешения. Любое приложение может это проверить.

Мессенджер Max (бывший VK Мессенджер) уже использует этот метод и, по данным экспертов, передаёт информацию о VPN-подключениях, которая используется для блокировки IP-адресов VPN-серверов.

Метод 2: проверка IP-адреса через серверную сторону

Приложение при каждом запросе отправляет на свой сервер IP-адрес клиента. Сервер проверяет его по базам данных VPN/прокси-IP (MaxMind, IP2Proxy и аналоги).

Это тот же метод, который используют Netflix и стриминги. Но теперь его применяют российские маркетплейсы.

Плюс для разработчика: не нужно менять код приложения. Достаточно добавить проверку на бэкенде. Минус: если VPN-сервер использует «чистый» резидентный IP — проверка не сработает.

Метод 3: DNS-leak и рассинхронизация данных

Приложение может сравнить несколько источников информации о геолокации пользователя:

IP-адрес → определяет одну страну

GPS → определяет другую

SIM-карта (MCC/MNC) → определяет третью

Язык системы, часовой пояс → четвёртый и пятый сигнал

Если IP говорит «Нидерланды», а SIM-карта — «Россия», GPS — «Москва» и язык системы — русский, вывод очевиден: VPN.

Каждый сигнал по отдельности ненадёжен, но в совокупности — работает точно. Именно поэтому некоторые приложения «ловят» VPN даже когда IP-адрес не в базе VPN-серверов.

Метод 4: анализ маршрутизации (iOS — сложнее)

На iOS Apple ограничивает доступ приложений к сетевым интерфейсам. Проверить tun0 напрямую нельзя. Минцифры признаёт, что на iPhone реализовать детекцию VPN сложнее.

Но есть обходные пути: проверка через getifaddrs() (C-функция, доступная из Swift), анализ времени ответа (VPN добавляет задержку), проверка DNS-резолвинга. Менее надёжно, чем на Android, но работает.

Метод 5: белые списки и «методичка Минцифры»

Самое интересное — «белые списки». Это перечень из 120+ российских сервисов (Госуслуги, банки, маркетплейсы, СМИ, онлайн-кинотеатры), которым ТСПУ не мешает. Трафик к этим сервисам не фильтруется и не замедляется.

Условие попадания в белый список: сервис должен сам ограничивать VPN-пользователей. Если не ограничивает — может вылететь из списка. А вылететь из белого списка значит попасть под общую фильтрацию ТСПУ — замедление, перебои, жалобы пользователей.

То есть Минцифры создало экономический стимул: хочешь стабильную работу своего сервиса — борись с VPN за нас.

Что это значит для разработчиков

Если вы разрабатываете приложение для российского рынка и оно попадёт в белые списки — вам придётся внедрять VPN-детекцию. Это уже не рекомендация, а условие стабильной работы.

С технической точки зрения реализация простая — 10 строк кода на Android, чуть сложнее на iOS. Вопрос скорее этический: хотите ли вы, чтобы ваше приложение определяло VPN у пользователя и передавало эту информацию.

Что делать пользователям

Если вы пользуетесь VPN и российскими сервисами одновременно — варианты:

Split tunneling. Настройте VPN так, чтобы трафик к российским сервисам шёл напрямую, а через VPN — только то, что нужно. Большинство VPN-клиентов поддерживают это (исключения по приложениям или по домену).

Два профиля. На Android можно использовать рабочий профиль или Island/Shelter для изоляции приложений. В одном профиле — VPN и то, что нужно через VPN. В другом — российские приложения без VPN.

Отключать перед заходом. Самый простой вариант, который и предлагают сами приложения.

Что будет дальше

Дедлайн — 15 апреля. После этого все 120+ сервисов из белого списка должны ограничивать VPN-пользователей. К 1 мая — плата за международный трафик свыше 15 ГБ у операторов.

39% россиян пользуются VPN — это плюс 8 процентных пунктов с начала 2026 года. Запросы «VPN» в Яндексе достигли 3 миллионов в неделю — уровень весны 2022-го.

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


Ваши приложения уже показывают предупреждение о VPN? Как решаете — split tunneling, отключение, или что-то другое?

по теме #basics