Как работают белые списки и почему DNS выходит из строя
Белые списки — это режим фильтрации, при котором доступен только ограниченный набор ресурсов, а весь остальной трафик блокируется. В отличие от классических чёрных списков, где запрещено конкретное, здесь разрешено только явно одобренное. Система работает на двух уровнях: на сетевом (L3) проверяется IP-адрес назначения по списку разрешённых подсетей, а на прикладном (L7) анализируется SNI в TLS-запросе. Если IP не в списке, пакет просто отбрасывается, и соединение не устанавливается. Если IP разрешён, но SNI подозрительный, соединение может быть разорвано.
В этой архитектуре DNS часто оказывается первой жертвой. Когда оператор включает белые списки, стандартные публичные DNS-серверы, такие как 8.8.8.8 или 1.1.1.1, становятся недоступны, поскольку их IP не входят в разрешённый список. Пользователь видит, что интернет «есть», но сайты не открываются, потому что доменные имена не резолвятся. Работает только DNS провайдера, который находится внутри сети оператора. Это создаёт фундаментальную проблему: без работающего DNS невозможно установить соединение с любым доменом, даже если его IP разрешён.
Какие DNS-серверы работают в режиме белых списков
На практике при включении белых списков доступность внешних DNS сильно зависит от оператора и региона. Известно, что у некоторых мобильных операторов, например у Мегафона, при активации белых списков UDP-порт 53 закрыт для всех внешних DNS, и работает только собственный DNS-сервер оператора. Это подтверждается тестами: запросы к 8.8.8.8 и 1.1.1.1 уходят в таймаут, а запрос к 77.88.8.8 (Яндекс) тоже блокируется, тогда как внутренний адрес оператора отвечает нормально.
Однако полной блокировки всех внешних DNS может и не быть. В некоторых случаях доступны DNS-серверы на нестандартных портах или через другие протоколы. Например, DNS поверх HTTPS (DoH) или DNS поверх TLS (DoT) используют порт 443, который часто остаётся открытым для легитимного трафика. Но если IP-адрес DNS-сервера не в белом списке, DoH/DoT тоже не сработает, потому что соединение блокируется ещё на сетевом уровне. Поэтому ключевой фактор — не протокол, а IP-адрес сервера: он должен входить в разрешённые подсети.
DNS как инструмент обхода: что можно сделать
Когда обычный DNS не работает, обход белых списков требует нестандартных подходов. Один из популярных методов — использование DNS-запросов через уже разрешённые сервисы. Например, можно настроить туннель через DNS-запросы к серверу, который находится в белом списке. Это медленно, но иногда работает для ограниченного доступа. Другой вариант — использовать DNS-сервисы, размещённые на IP-адресах, которые входят в белый список (например, внутри сети Яндекса или VK). Такие DNS могут быть недоступны широкой публике, но для обхода они подходят.
Более практичный метод — не полагаться на системный DNS, а использовать VPN с собственным DNS внутри туннеля. Когда VPN-соединение установлено, все DNS-запросы передаются внутри зашифрованного туннеля и не видны DPI. Это решает проблему с резолвингом, но требует, чтобы сам VPN-сервер был доступен, что при белых списках возможно только если его IP разрешён или используется маскировка. Некоторые конфигурации VLESS с Reality позволяют подключаться к серверам, которые находятся в белом списке, например через SNI разрешённого домена.
Настройка DoH и DoT для обхода фильтрации
Если вы хотите использовать DNS поверх HTTPS или TLS, важно выбрать сервер, чей IP входит в белый список. В противном случае соединение будет заблокировано. Для проверки можно использовать утилиты вроде dig с указанием порта и протокола. Например, команда dig +tls @dns.adguard.com попытается установить DoT-соединение. Если сервер недоступен, стоит попробовать другие.
Однако даже если DoH/DoT работает, это не решает проблему полностью. Запросы к заблокированным доменам могут быть перехвачены или возвращать поддельные ответы. Поэтому DoH/DoT полезен только если DNS-сервер находится вне зоны фильтрации, но тогда его IP должен быть разрешён, что маловероятно для большинства публичных сервисов. Тем не менее, некоторые компании, например Яндекс, могут иметь DNS внутри своих сетей, и они могут работать. Перед использованием проверяйте доступность с помощью ping или curl.
Использование VPN с встроенным DNS
Самый надёжный способ обойти DNS-фильтрацию при белых списках — использовать VPN, который передаёт DNS-запросы внутри туннеля. Когда вы подключаетесь к VPN-серверу, весь трафик, включая DNS, шифруется и отправляется через разрешённый IP или маскированный протокол. Это гарантирует, что ваши DNS-запросы не видны оператору и не блокируются.
Для этого нужно выбрать VPN-сервис, который работает в условиях белых списков. Как показывает практика, обычные VPN на зарубежных серверах не работают, потому что их IP не в белом списке. Решение — использовать VPS в российских облаках (Yandex Cloud, VK Cloud, Timeweb), которые входят в белый список, и настраивать на нём VLESS с Reality. В такой конфигурации DNS можно указать как 1.1.1.1 или 8.8.8.8, и запросы будут проходить через туннель, даже если напрямую они недоступны.
Альтернативы DNS: резолвинг через уже разрешённые сервисы
Если VPN недоступен, можно попробовать использовать DNS через HTTP-прокси или через специальные сервисы, которые преобразуют DNS-запросы в HTTP-запросы. Например, есть сервисы, которые принимают DNS-запросы через обычный HTTPS-запрос к своему API. Если IP такого сервиса в белом списке, это работает. Однако таких публичных сервисов мало, и они часто перегружены.
Другой вариант — использовать DNS-резолвинг через SMTP, SSH или другие протоколы, которые обычно открыты. Но это сложно и непрактично. На форумах упоминаются методы туннелирования DNS через ICMP или через DNS-серверы внутри белого списка, но они требуют технических знаний и часто нестабильны. Лучший подход — комбинировать DNS с VPN или использовать уже доступные туннели.
Практические примеры настройки DNS в обходных конфигурациях
Рассмотрим пример настройки клиента v2rayN или Nekobox для обхода белых списков. Основная идея — указать в конфигурации VPN-сервера SNI разрешённого домена, например vk.com, а DNS оставить стандартным. При подключении весь трафик, включая DNS, идёт через туннель, поэтому системный DNS не используется. В настройках клиента можно явно указать DNS-сервер, например 1.1.1.1, но трафик всё равно будет проходить через туннель.
Вот пример конфигурации VLESS Reality:
vless://UUID@IP:443?type=tcp&security=reality&pbk=ваш_публичный_ключ&fp=chrome&sni=vk.com&sid=ваш_sid&flow=xtls-rprx-vision#обходЗдесь важно, чтобы IP-адрес сервера был в белом списке. Для этого можно арендовать VPS у Timeweb или Yandex Cloud, которые часто попадают в белый список. После настройки VPN можно использовать любой DNS, но лучше задать в настройках системы DNS, который будет резолвить через туннель, например 1.1.1.1. Если VPN не работает, проверьте, не блокирует ли оператор порт 443 — обычно он открыт.
Ограничения и риски использования обходного DNS
Важно понимать, что обход белых списков с помощью DNS имеет свои ограничения. Во-первых, если ваш IP-адрес назначения не в белом списке, DNS не поможет — соединение будет заблокировано на сетевом уровне. Во-вторых, фильтрация SNI может блокировать даже разрешённые IP, если SNI содержит запрещённый домен. Поэтому даже если DNS резолвится, соединение может быть разорвано.
В-третьих, использование нестандартных DNS или туннелей может привлечь внимание оператора и привести к блокировке конкретного IP или даже целой подсети. Известны случаи, когда популярные обходные серверы быстро добавлялись в чёрные списки. Поэтому рекомендуется использовать свежие конфигурации и периодически менять SNI и IP. Наконец, некоторые методы могут быть медленными и нестабильными, особенно DNS-туннели, поэтому лучше использовать VPN.
Заключение: что выбрать для обхода DNS-фильтрации
Подводя итог, можно сказать, что DNS для обхода белых списков — это не самостоятельное решение, а часть более сложной схемы. Эффективнее всего использовать VPN с маскировкой трафика (например, VLESS Reality), который решает проблему DNS внутри туннеля. Однако для быстрой проверки или временного доступа можно попробовать альтернативные DNS-сервисы, если их IP в белом списке.
Главный совет: всегда проверяйте доступность DNS-сервера с помощью ping и nslookup, используйте актуальные списки SNI и IP из открытых источников, а также регулярно обновляйте конфигурации. В условиях нестабильной фильтрации решение, которое работало вчера, может перестать работать сегодня. Поэтому важно иметь запасные варианты и следить за обсуждениями на технических форумах.
Вопросы и ответы
Почему при белых списках не работает даже смена DNS на 8.8.8.8?
Потому что DNS-сервер 8.8.8.8 физически находится за пределами разрешённых подсетей. Когда включён белый список, оператор блокирует любой трафик до IP, которые не входят в список. Поэтому запросы к 8.8.8.8 не могут пройти на сетевом уровне, и таймаут — это ожидаемое поведение. Работать может только DNS провайдера, размещённый внутри сети оператора.
Может ли DNS-over-HTTPS помочь обойти белые списки?
DoH использует порт 443, который часто открыт, но если IP сервера DoH не в белом списке, соединение будет заблокировано до начала обмена данными. Так что DoH может помочь, только если вы используете сервер, который находится в разрешённой подсети (например, внутри сети Яндекса). В остальных случаях DoH не решит проблему блокировки на L3.
Какой DNS указать в настройках VPN при обходе белых списков?
Если VPN-туннель работает, весь DNS-трафик идёт внутри него, поэтому можно указать любой публичный DNS, например 1.1.1.1. Но чтобы избежать утечек, лучше использовать DNS самого VPN-провайдера или системный DNS. Главное — чтобы DNS-запросы не выходили за пределы туннеля, иначе они могут быть заблокированы.
Что делать, если VPN работает, но сайты не открываются по DNS?
Если VPN установлен, но DNS не резолвится, скорее всего, в системе остались старые DNS-записи или включён режим split tunneling. Попробуйте в настройках VPN выбрать «Весь трафик» или «Полный туннель», а также очистить кэш DNS. Убедитесь, что в настройках сетевого адаптера указан DNS 1.1.1.1 или 8.8.8.8, но при этом они не блокируются из-за утечки.
Есть ли бесплатные DNS-сервисы, которые работают при белых списках?
Бесплатные публичные DNS, такие как Google или Cloudflare, в большинстве случаев недоступны при белых списках, потому что их IP не входят в разрешённые. Некоторые провайдеры могут предоставлять внутренние DNS-серверы, но они не предназначены для обхода. Лучше использовать бесплатные обходные подписки, которые включают в себя и DNS, и VPN.