Что такое белый список и как он работает
Белый список — это режим фильтрации трафика, при котором разрешены только заранее одобренные IP-адреса и домены, а всё остальное блокируется. В отличие от чёрных списков, где запрещены конкретные ресурсы, белый список по умолчанию запрещает всё, кроме явно разрешённого. В России такая фильтрация реализуется через ТСПУ (технические средства противодействия угрозам), которые могут работать в режиме drop-all, пропуская только одобренные IP и SNI.
Фильтрация происходит на двух уровнях: сетевом (L3) и прикладном (L7). На уровне L3 проверяется IP-адрес назначения: если он не входит в белый список, пакет просто отбрасывается (drop) на маршрутизаторе, ещё до того, как дойдёт до DPI. Если IP разрешён, трафик передаётся на уровень L7, где DPI анализирует SNI (Server Name Indication) в TLS-запросе. Если SNI находится в чёрном списке, соединение разрывается (RST). Таким образом, даже если IP-адрес разрешён, но домен заблокирован, доступ будет невозможен.
Важно понимать, что белые списки не статичны: они обновляются, различаются у разных операторов и даже в разных регионах. Например, в Москве белый список может работать эпизодически, а в большинстве регионов — постоянно. Это создаёт нестабильную среду, где доступность ресурсов меняется от точки доступа к точке доступа.
Особенности фильтрации на уровне L3 и L7
На уровне L3 фильтрация по IP-адресам работает жёстко: для не-вайтлист IP (например, Google, Telegram, Twitter) не проходит ни ICMP, ни TCP, ни UDP — 100% потеря пакетов. Для разрешённых IP обычно открыты порты 80 и 443, но UDP-трафик (включая QUIC, DNS и WireGuard) часто блокируется. Это означает, что даже если IP в белом списке, стандартные VPN-протоколы на UDP не будут работать.
На уровне L7 DPI проверяет SNI в TLS ClientHello. Если SNI в чёрном списке, соединение сбрасывается. Однако правила SNI-фильтрации не всегда консистентны: один и тот же SNI может пропускаться через один IP, но блокироваться через другой. Например, SNI telegram.org может работать через IP Яндекса, но не через IP VK. Это связано с тем, что чёрные списки SNI различаются для разных ASN, и единого общего списка нет.
Также стоит отметить, что ECH/ESNI (Encrypted Client Hello) блокируется ТСПУ, но даже если бы он работал, это не помогло бы обойти блокировку, поскольку основная фильтрация идёт по IP, а не по SNI. Шифрование имени домена бесполезно, если сам IP-адрес не в белом списке.
Почему стандартные VPN не работают в режиме белого списка
Обычные VPN-сервисы, использующие зарубежные VPS, не работают в режиме белого списка, потому что их IP-адреса не входят в список разрешённых. Даже если VPN-протокол замаскирован под обычный HTTPS-трафик, фильтрация на уровне L3 блокирует соединение до того, как пакеты достигнут сервера. Это делает большинство коммерческих VPN бесполезными в условиях белого списка.
Кроме того, многие VPN-протоколы используют UDP (например, WireGuard, OpenVPN), а UDP-трафик в белом списке почти полностью блокируется. Даже если VPN-сервер имеет IP в белом списке, стандартные порты UDP (51820 для WireGuard, 1194 для OpenVPN) часто закрыты. Поэтому для обхода белого списка требуются специальные методы, которые используют разрешённые IP и порты.
Некоторые пользователи пытаются использовать QUIC/HTTP3, но этот протокол также блокируется, особенно в режиме белого списка. UDP:443 режется, что делает невозможным использование QUIC. Таким образом, стандартные VPN-решения не подходят для обхода белого списка, и нужны альтернативные подходы.
Метод 1: VLESS + Reality на российском VPS
Один из наиболее эффективных методов обхода белого списка — использование протокола VLESS с технологией Reality на VPS, расположенном в России и имеющем IP в белом списке. Этот метод работает стабильно и относительно прост в настройке.
Требования: IP-адрес сервера должен быть в белом списке (например, VPS у Timeweb, Yandex Cloud или VK Cloud), SNI должен быть доменом из белого списка (например, vk.com, ya.ru или vklive.enotfast.com), и используется Reality + XTLS-Vision для маскировки трафика под обычный HTTPS.
Пример конфигурации: vless://UUID@IP:443?type=tcp&security=reality&pbk=...&fp=chrome&sni=vklive.enotfast.com&sid=...&flow=xtls-rprx-vision. Здесь SNI выбирается из списка разрешённых доменов, что позволяет обойти SNI-фильтрацию. Важно выбирать SNI, который не находится в чёрном списке (например, не использовать twitter.com или youtube.com).
Провайдеры VPS имеют свои особенности: Timeweb предлагает бесплатный reroll IP, но выбить подходящий IP может быть сложно; Yandex Cloud даёт бесплатный грант 4000 рублей при регистрации и высокий шанс попасть в белый список, но аккаунты могут быстро блокироваться; VK Cloud долго держится, но сложная верификация и дорого. Выбор провайдера зависит от ваших приоритетов: скорость настройки, стоимость или стабильность.
Метод 2: Использование Yandex Cloud Functions как прокси
Альтернативный метод — использование serverless-функций Yandex Cloud в качестве прокси. Эндпоинт functions.yandexcloud.net универсально входит в белый список у всех провайдеров, что делает этот метод надёжным.
Бесплатный тариф включает 1 000 000 вызовов в месяц, 100 000 ГБ-секунд и 40 000 ГГц-секунд, что достаточно для личного использования. Вы можете написать SOCKS5-клиент, который подключается к функции, и использовать его для обхода блокировок. DPI не применяется к IP Яндекса на уровнях L3 и L7, поэтому домены *.yandexcloud.net работают без проблем.
Этот метод особенно полезен, если у вас нет возможности арендовать VPS или если вы хотите минимизировать затраты. Однако стоит учитывать, что serverless-функции имеют ограничения по времени выполнения и могут быть менее стабильными при больших объёмах трафика. Для повседневного использования этого обычно достаточно.
Другие возможные методы и их ограничения
Помимо VLESS и Yandex Cloud Functions, существуют и другие методы, но они менее надёжны или имеют существенные ограничения. Например, можно попробовать использовать прокси на основе разрешённых доменов, таких как GitLab на Yandex Cloud, но это требует дополнительной настройки и может быть нестабильным.
Также можно рассмотреть использование DNS-туннелей, но они медленные и часто блокируются. SSH-туннели на порт 443 могут работать, если IP сервера в белом списке, но это не всегда эффективно из-за DPI.
Важно понимать, что любой метод обхода белого списка должен использовать IP-адреса, которые входят в белый список. Поэтому ключевым фактором является выбор VPS или сервиса, который находится в списке разрешённых. Списки обновляются, поэтому необходимо следить за актуальными данными, например, через репозиторий openlibrecommunity/twl.
Как выбрать подходящий метод обхода
Выбор метода обхода белого списка зависит от нескольких факторов: вашего технического уровня, доступных ресурсов и целей. Если вы готовы арендовать VPS и настроить VLESS+Reality, это будет наиболее стабильным и универсальным решением. Для этого потребуется базовое понимание работы VPN и настройки серверов.
Если вы предпочитаете более простое решение или не хотите тратить деньги на VPS, Yandex Cloud Functions может стать хорошей альтернативой. Этот метод проще в настройке и не требует постоянного обслуживания, но может быть менее производительным.
Также стоит учитывать, что белые списки различаются у разных операторов и регионов. Поэтому метод, который работает у одного провайдера, может не работать у другого. Рекомендуется тестировать разные подходы и выбирать тот, который наиболее стабилен в вашей конкретной ситуации.
Практические рекомендации и предостережения
При использовании методов обхода белого списка важно соблюдать осторожность и учитывать юридические аспекты. Обход блокировок может нарушать законодательство, поэтому вы несёте ответственность за свои действия.
Технически рекомендуется использовать SNI, которые не находятся в чёрном списке, чтобы избежать RST. Избегайте использования очевидно заблокированных доменов, таких как twitter.com или youtube.com, в качестве SNI. Лучше выбирать домены из белого списка, например, storage.yandex.net, yastatic.net, userapi.com, vkuser.net, hosting.reg.ru, cdnvideo.ru и другие.
Также важно регулярно обновлять списки разрешённых IP и SNI, так как они меняются. Следите за обновлениями в сообществах, таких как openlibrecommunity, чтобы быть в курсе изменений. И помните, что даже с обходом белого списка доступ к некоторым ресурсам может быть нестабильным из-за особенностей фильтрации.
Часто задаваемые вопросы
В этом разделе мы собрали ответы на наиболее частые вопросы, связанные с обходом белого списка. Они помогут вам лучше понять технические детали и избежать распространённых ошибок.
Вопросы и ответы
Почему обычный VPN не работает в режиме белого списка?
Обычные VPN-сервисы используют зарубежные серверы, чьи IP-адреса не входят в белый список. Фильтрация на уровне L3 блокирует пакеты до того, как они достигнут VPN-сервера. Кроме того, многие VPN-протоколы работают через UDP, который в белом списке почти полностью блокируется. Поэтому для обхода нужны методы, использующие разрешённые IP и порты, например, VLESS+Reality на российском VPS.
Что такое SNI и почему он важен для обхода белого списка?
SNI (Server Name Indication) — это поле в TLS-запросе, которое указывает имя домена, к которому идёт обращение. DPI проверяет SNI и может блокировать соединение, если домен находится в чёрном списке. При обходе белого списка важно использовать SNI, который не заблокирован, например, домены из белого списка, такие как vk.com или ya.ru. Это позволяет обойти SNI-фильтрацию.
Как узнать, какие IP-адреса входят в белый список?
Существуют открытые репозитории, например, openlibrecommunity/twl, где публикуются результаты сканирования белых списков. Эти данные обновляются регулярно и содержат списки IP-адресов и доменов, которые пропускаются через ТСПУ. Вы можете использовать эти данные для выбора VPS или SNI для обхода.
Можно ли использовать Yandex Cloud Functions для обхода белого списка бесплатно?
Да, Yandex Cloud Functions имеет бессрочный бесплатный тариф, который включает 1 000 000 вызовов в месяц, 100 000 ГБ-секунд и 40 000 ГГц-секунд. Этого достаточно для личного использования. Вы можете настроить SOCKS5-прокси через функцию и использовать её для обхода блокировок. Однако стоит учитывать ограничения по времени выполнения и возможные задержки.
Какие SNI лучше использовать для маскировки при обходе?
Рекомендуется использовать SNI из белого списка, которые не находятся в чёрном списке. Примеры: storage.yandex.net, yastatic.net, userapi.com, vkuser.net, hosting.reg.ru, cdnvideo.ru. Избегайте SNI, которые явно заблокированы, например, twitter.com, x.com, youtube.com. Выбор правильного SNI критически важен для успешного обхода.
Что делать, если белый список работает нестабильно в моём регионе?
Белые списки могут работать неравномерно: в некоторых регионах они включены постоянно, в других — эпизодически. Если у вас нестабильный доступ, попробуйте использовать несколько методов обхода, например, VLESS+Reality и Yandex Cloud Functions, и переключайтесь между ними в зависимости от ситуации. Также следите за обновлениями списков и адаптируйте свою конфигурацию.