Перейти к содержимому
DNSОпубликовано ·

Что такое утечка DNS и почему это важно

Даже при включённом VPN DNS-запросы иногда уходят в обход туннеля. Разбираем, откуда берётся утечка и как правильно спроектированный клиент её закрывает.

Утечка DNS — один из самых частых технических пробелов у VPN-клиентов: сам туннель работает, а часть запросов всё равно идёт в обход него. Разбираемся, откуда это берётся.

Что такое DNS-запрос

Перед обращением почти к любому ресурсу в интернете устройство сначала переводит доменное имя — например, meervpn.com — в IP-адрес через DNS-запрос. Это происходит для каждого нового домена, часто незаметно для пользователя, за доли секунды до самого соединения.

Почему запрос может пойти в обход туннеля

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

Внешне это выглядит одинаково: VPN показывает статус «подключено», трафик к сайтам действительно идёт через туннель, а DNS-запросы тем временем всё ещё «утекают» в сеть напрямую.

Почему это имеет значение

Список DNS-запросов за сессию — довольно точный слепок того, какими сервисами вы пользуетесь, даже если содержимое каждого сайта отдельно зашифровано. Утечка DNS сводит на нет часть смысла включённого VPN именно в той части, которая касается видимости для локальной сети.

Отдельная проблема утечки DNS в том, что она не всегда заметна пользователю: индикатор подключения в приложении не показывает, куда именно уходят DNS-запросы.

Как это закрывается архитектурно

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

Это архитектурный принцип, а не отдельная «фича», которую можно включить или выключить постфактум: туннель, который считается полным, обязан закрывать DNS-запросы наравне с запросами к самим сайтам — это часть проектирования клиента, а не патч поверх готового решения.

Вопросы по теме

Как вообще заметить утечку DNS?

Существуют публичные онлайн-инструменты для проверки утечки DNS: при включённом VPN они показывают, через чей DNS-сервер фактически резолвятся домены — сети провайдера или сервера внутри туннеля.

Утечка DNS — это баг конкретного приложения или общая проблема?

Это известный класс проблем, характерный для VPN-клиентов в целом, а не единичный баг одного приложения — особенно часто встречается при ручной настройке протоколов вроде OpenVPN без явной настройки DNS.

Может ли утечка DNS произойти, даже если сам VPN честно шифрует остальной трафик?

Да, это независимые механизмы: шифрование трафика к сайтам и маршрутизация DNS-запросов настраиваются отдельно. Правильная архитектура клиента подразумевает, что оба идут через один и тот же туннель по умолчанию.