Безопасность
DNS leak: как проверить и починить VPN в 2026
§ в этой статье — 29 разделов
- Что такое DNS — на пальцах
- Что такое DNS leak — точно
- Почему DNS leak происходит
- 1. Браузер использует свой DNS (DoH / DoT)
- 2. Operating system caches old DNS
- 3. Split tunneling, настроенный неправильно
- 4. IPv6 leak с DNS
- 5. WebRTC-связанные утечки
- 6. mDNS / LLMNR / NetBIOS
- Как проверить DNS leak
- Тест 1: dnsleaktest.com (классика)
- Тест 2: browserleaks.com/dns
- Тест 3: ipleak.net
- Тест 4: nslookup из терминала
- Как починить DNS leak
- Шаг 1: настройка в VPN-клиенте
- Шаг 2: отключить DoH в браузере
- Шаг 3: отключить Smart Multi-Homed Name Resolution на Windows
- Шаг 4: задать DNS вручную
- Шаг 5: проверить IPv6
- Шаг 6: переподключить VPN
- DNS leak при разных протоколах
- DNS leak на мобильных устройствах
- Android
- iOS
- Smart DNS routing — отдельная история
- DNS leak — что НЕ исправляет
- Резюме
- Связанные материалы
DNS leak — это утечка DNS-запросов мимо VPN-туннеля. Когда вы под VPN запрашиваете адрес youtube.com, DNS-запрос должен идти через сервер VPN-провайдера, а ваш реальный провайдер не должен знать, какие домены вы посещаете. Если DNS-запрос ушёл напрямую через локального провайдера или сторонний резолвер — это leak. Ваш ISP видит список доменов, даже если основной трафик зашифрован VPN.
В 2026 году DNS leak — одна из самых частых проблем VPN-конфигураций, и она почти всегда чинится за 5 минут.
Что такое DNS — на пальцах
DNS (Domain Name System) — это телефонная книга интернета. Когда вы пишете https://vpn-rating.xyz, браузер сначала спрашивает DNS-сервер: «какой IP у этого домена?». Получает ответ, например 89.110.73.101, и уже тогда начинает грузить страницу.
Без DNS — нет интернета. И DNS-запросы по умолчанию идут на тот DNS-сервер, который указал ваш провайдер при выдаче DHCP. То есть — на сервера МТС, Билайна, Ростелекома и так далее.
Что такое DNS leak — точно
DNS leak происходит, когда VPN-туннель установлен, но DNS-запросы продолжают идти через старый DNS-сервер (обычно — ISP) вместо DNS-сервера VPN-провайдера.
Сценарий:
- Вы подключились к ProtonVPN. Туннель работает, ваш реальный IP замаскирован.
- Вы заходите на
instagram.com. Браузер шлёт DNS-запрос. - ОС берёт DNS-сервер из настроек — а там до сих пор
8.8.8.8(Google) или2.56.220.2(МТС). - DNS-запрос уходит на этот сервер мимо VPN-туннеля.
- Локальный провайдер видит: «такой-то IP сделал DNS-запрос на instagram.com».
Даже если основной HTTPS-трафик идёт через VPN, DNS-запросы выдают историю посещений.
Это особенно неприятно в России в 2026 году, потому что:
- РКН требует от провайдеров логировать DNS-запросы (закон о хранении данных).
- Появление в логах ISP запроса на
youtube.com,instagram.com,pornhub.comможет стать поводом для внимания. - VPN формально не помог, если DNS-запросы остались публичными.
Почему DNS leak происходит
Есть несколько типичных причин:
1. Браузер использует свой DNS (DoH / DoT)
Современные браузеры (Firefox, Chrome 83+) умеют делать DNS over HTTPS (DoH) внутри браузера, минуя системный resolver.
- Firefox по умолчанию включает DoH через Cloudflare (
1.1.1.1) в США. - Chrome — Secure DNS, который пытается использовать DoH-резолвер из списка known providers.
Если у вас Firefox с включённым DoH, то даже под VPN ваши DNS-запросы из браузера идут не через VPN, а напрямую к Cloudflare DoH endpoint. Cloudflare видит ваш домашний IP и список запрашиваемых доменов.
2. Operating system caches old DNS
После подключения VPN ОС может продолжать использовать кешированные DNS-серверы от старого подключения. Это особенно характерно для Windows с Smart Multi-Homed Name Resolution — функция, которая шлёт DNS-запросы на все сетевые интерфейсы параллельно и берёт самый быстрый ответ.
3. Split tunneling, настроенный неправильно
Split tunneling — фича, при которой только некоторые приложения идут через VPN. Если по ошибке настроили «браузер — напрямую, торрент — через VPN», то DNS из браузера идёт напрямую, и сайты в браузере видны провайдеру.
4. IPv6 leak с DNS
Если IPv6 не туннелируется через VPN, DNS-запросы по IPv6 идут напрямую, даже если IPv4-туннель работает.
5. WebRTC-связанные утечки
WebRTC иногда делает свои DNS-запросы для STUN-серверов, что может миновать VPN.
6. mDNS / LLMNR / NetBIOS
Локальные протоколы вроде mDNS (Bonjour) или Windows NetBIOS делают запросы напрямую в локальную сеть. Это не утечка во внешний интернет, но может выдавать имена устройств.
Как проверить DNS leak
Тест 1: dnsleaktest.com (классика)
Самый известный сервис. Зайдите на dnsleaktest.com, нажмите «Extended test».
Что показывается:
- Hostname — DNS-сервер, через который шёл запрос.
- IP — его адрес.
- ISP — кому принадлежит этот DNS.
- Country — страна сервера.
Что должно быть:
- Все строки должны принадлежать вашему VPN-провайдеру или дружественной сети.
- Если видите Google (
8.8.8.8), Cloudflare (1.1.1.1), МТС, Ростелеком, Yandex.DNS — это leak.
Пример нормального результата для подключения к ProtonVPN: ProtonVPN AG, Switzerland, anonymous DNS.
Пример leak: 8.8.8.8 Google LLC United States (DNS уходит к Google) или 2.56.220.2 PJSC Mobile TeleSystems Russia (DNS на МТС).
Тест 2: browserleaks.com/dns
browserleaks.com/dns — более продвинутый. Делает 10 параллельных запросов и показывает все DNS, которые их обработали. Если в списке есть IP вашего реального провайдера — leak.
Тест 3: ipleak.net
ipleak.net — комплексный leak-тест: IPv4, IPv6, DNS, WebRTC, torrent IP detection. Хорошо для разового полного аудита.
Тест 4: nslookup из терминала
Чисто технический способ — проверить какой DNS-сервер используется ОС.
Windows:
nslookup vpn-rating.xyz
Macos / Linux:
dig vpn-rating.xyz +short
scutil --dns | grep nameserver
Если в выводе видите DNS-сервер вашего провайдера — leak.
Как починить DNS leak
Шаг 1: настройка в VPN-клиенте
Большинство приличных VPN-клиентов имеют опцию «Force DNS through VPN» или «Block DNS outside tunnel». Включите её.
- Mullvad —
Settings → VPN settings → DNS content blockers / Use custom DNS server. По умолчанию DNS форсируется через сервер Mullvad. - ProtonVPN —
Preferences → Advanced → DNS leak protection(включено по умолчанию). - NordVPN —
Settings → Advanced settings → DNS leak protection. - Surfshark — автоматически включено в десктопных клиентах.
- ExpressVPN — Network Lock включает DNS-leak protection.
Шаг 2: отключить DoH в браузере
Firefox:
about:config→network.trr.mode→ установить5(отключить DoH полностью).- Альтернативно:
Settings → Privacy → DNS over HTTPS → Off.
Chrome / Edge:
chrome://settings/security→Use secure DNS→ Off.
Это заставит браузер использовать системный DNS-resolver, который под VPN будет VPN-DNS.
Шаг 3: отключить Smart Multi-Homed Name Resolution на Windows
Это причина классической DNS-утечки на Windows. Откройте PowerShell от админа:
Set-DnsClientGlobalSetting -SmartMultiHomedNameResolution $false
Или через групповые политики: Computer Configuration → Administrative Templates → Network → DNS Client → Turn off smart multi-homed name resolution → Enabled.
Шаг 4: задать DNS вручную
Если ничего из вышеперечисленного не помогло, задайте DNS-сервер вашего VPN-провайдера вручную в настройках сетевого адаптера.
Mullvad DNS: 100.64.0.6 (внутренний AdBlock DNS, доступный из любого Mullvad-сервера).
ProtonVPN: 10.2.0.1 (внутренний DNS).
NordVPN: 103.86.96.100, 103.86.99.100.
На Windows: Control Panel → Network → Адаптер → Properties → IPv4 → Use the following DNS server addresses.
На macOS: System Preferences → Network → Advanced → DNS.
На Linux: /etc/resolv.conf (или через NetworkManager, systemd-resolved).
Шаг 5: проверить IPv6
Зайдите на test-ipv6.com. Если показывается ваш IPv6 — отключите IPv6 на устройстве или убедитесь, что VPN его туннелирует.
Отключить IPv6 на Windows:
Network adapter → Properties → uncheck "Internet Protocol Version 6".
На macOS:
networksetup -setv6off Wi-Fi
На Linux:
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
Шаг 6: переподключить VPN
После всех изменений отключите и переподключите VPN, очистите DNS-кеш:
Windows: ipconfig /flushdns
macOS: sudo killall -HUP mDNSResponder
Linux: sudo systemd-resolve --flush-caches
Затем заново сделайте тест на dnsleaktest.com.
DNS leak при разных протоколах
DNS-leak возможен на любом VPN-протоколе, но частота разная:
- WireGuard / AmneziaWG — нативно требует AllowedIPs = 0.0.0.0/0, что заворачивает всё через туннель. DNS leak редкая.
- VLESS Reality — зависит от клиента. NekoBox, Hiddify обычно правильно настраивают DNS. Кастомные конфиги могут лажать.
- Shadowsocks-2022 — обычно работает как SOCKS-прокси. DNS-запросы из приложений, которые не используют прокси, идут напрямую. Нужна явная настройка TUN-режима.
- OpenVPN — поддерживает
block-outside-dnsдирективу, которая блокирует DNS вне туннеля на Windows. - IKEv2 — на iOS / macOS отлично интегрируется с системным DNS. На Windows иногда лажает.
См. подробности по протоколам в VPN протоколы 2026: какой выбрать для России.
DNS leak на мобильных устройствах
Android
Android 7+ имеет встроенный системный VPN. Если включить Always-on VPN + Block connections without VPN — DNS форсируется через туннель.
Дополнительно: Android поддерживает Private DNS (DoT) на уровне ОС. Можно задать DNS-сервер VPN-провайдера в Settings → Network → Private DNS → Custom. Тогда даже если VPN отвалится, DNS-запросы идут через TLS на указанный сервер.
См. VPN для Android из России 2026.
iOS
iOS жёстче изолирует VPN — большинство приложений шлют DNS через VPN автоматически. Но system-level процессы (push-уведомления Apple, например) могут идти напрямую.
Если используете On Demand VPN — DNS форсируется через туннель. См. VPN для iPhone.
Smart DNS routing — отдельная история
Некоторые VPN-провайдеры (особенно ExpressVPN, Surfshark) предлагают Smart DNS — фичу, которая роутит запросы определённых доменов через специальные DNS, чтобы получить Geo-доступ к стримингам. Это не VPN — это просто DNS-spoofing.
Smart DNS может конфликтовать с VPN: запросы определённых доменов идут через Smart DNS вместо VPN-DNS. Если приватность важна — Smart DNS отключите.
DNS leak — что НЕ исправляет
- Browser fingerprint — отпечаток браузера остаётся.
- WebRTC leak — нужна отдельная настройка. См. WebRTC leak: как закрыть.
- IP leak при разрыве туннеля — нужен kill switch.
- Cookie tracking — куки сайтов остаются и связывают сессии до/после VPN.
DNS — лишь один слой приватности. Полная защита — комплекс мер.
Резюме
DNS leak — самая частая и легко чинимая утечка. Чек-лист для исправления:
- Включить DNS leak protection в VPN-клиенте.
- Отключить DoH в браузере (Firefox, Chrome).
- Отключить Smart Multi-Homed Name Resolution на Windows.
- Отключить IPv6 или убедиться, что VPN его туннелирует.
- После изменений —
flush DNS cache+ переподключить VPN. - Проверить на dnsleaktest.com / browserleaks.com / ipleak.net.
5 минут работы — и одна из главных приватность-уязвимостей закрыта.
Связанные материалы
читать дальше
Похожие статьи
-
Безопасность
Kill switch и защита от утечек VPN: подробный разбор 2026
Что делает kill switch, чем отличается системный уровень от app-level, что протекает без него: DNS, IPv6, WebRTC. Mullvad, ProtonVPN, Surfshark — кто как реализует.
-
Безопасность
ML-классификаторы против VPN 2026: как нейросети ловят трафик
ТСПУ применяет XGBoost и random forest на packet timings для классификации зашифрованного трафика. Что обходит ML: DAITA, padding, traffic shaping. Технический разбор.
-
Безопасность
Как платить за VPN анонимно в 2026: Monero, Lightning, vouchers
Способы оплатить VPN без раскрытия личности: Monero, Bitcoin Lightning, наличные по почте, ваучеры, prepaid-карты. Mullvad, AzireVPN, IVPN — кто принимает что.