Защита от утечек DNS в Windows
Как параметр «Строгая маршрутизация» (Strict Route) предотвращает утечки DNS в режиме TUN в Windows и что делать, если его нельзя использовать.
В режиме TUN Windows всё равно может отправлять DNS-запросы через обычный сетевой адаптер, и тогда интернет-провайдер видит, адреса каких сайтов вы запрашиваете. (В режиме Системный прокси (System Proxy) параметр Строгая маршрутизация (Strict Route) ни на что не влияет.)
Строгая маршрутизация (Strict Route)
Windows отправляет каждый DNS-запрос сразу на все сетевые адаптеры, поэтому он уходит и мимо туннеля. Пока работает режим TUN, Строгая маршрутизация добавляет фильтры брандмауэра Windows, которые:
- блокируют DNS (порт 53) на всех адаптерах, кроме туннеля;
- блокируют IPv6-подключения других приложений, пока выключен
Вкл. IPv6 в TUN(Tun Enable IPv6).
Фильтры могут блокировать и программы, которым нужен DNS или IPv6 вне туннеля.
В Windows 10 и 11 Строгая маршрутизация включена по умолчанию. Чтобы проверить, откройте Настройки (Settings) → Настройки режима TUN (Tun Settings), убедитесь, что флажок Строгая маршрутизация отмечен, нажмите OK, затем выключите и снова включите Режим TUN (Tun Mode).
Когда он выключен
- Windows 7, 8 или 8.1: там
Строгая маршрутизацияне работает. - «Строгая маршрутизация недоступна» (Strict routing unavailable): Windows не смогла установить фильтры, поэтому профиль не запустился. Если выключить
Строгая маршрутизация, как предлагает сообщение, защита пропадёт. Включите параметр снова, когда устраните причину. - Throne впервые установлен версии 1.2.0: в ней параметр был выключен, а обновления сохраняют настройки. Отметьте его.
Запасной вариант: реестр
Без Строгая маршрутизация отключите функцию Windows, которая отправляет DNS-запросы на все адаптеры (политика Turn off smart multi-homed name resolution, в русской Windows — «Отключить интеллектуальное многоадресное разрешение имён» или похожее название). Это слабее: меняется то, какие DNS-серверы опрашивает Windows, но ничего не блокируется. Нужна Windows 8 или новее.
Через групповую политику (Pro, Enterprise, Education)
- Откройте
Изменение групповой политики(Edit group policy) из меню «Пуск». - Перейдите в
Конфигурация компьютера(Computer Configuration) →Административные шаблоны(Administrative Templates) →Сеть(Network) →DNS-клиент(DNS Client). - Дважды щёлкните политику
Turn off smart multi-homed name resolution, выберитеВключено(Enabled) и нажмитеOK. - Перезагрузите Windows.
Чтобы отменить изменение, верните политике значение Не задано (Not Configured).
Через реестр (Windows Home)
Щёлкните правой кнопкой Командная строка (Command Prompt) в меню «Пуск», выберите Запуск от имени администратора (Run as administrator), выполните команду и перезагрузите Windows:
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" /v DisableSmartNameResolution /t REG_DWORD /d 1 /f
Чтобы отменить изменение, выполните эту команду тем же способом и перезагрузите Windows:
reg delete "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" /v DisableSmartNameResolution /f
Браузеры
Зашифрованный DNS
DNS over HTTPS в браузере или для сетевого адаптера в Windows 11 не использует порт 53. Строгая маршрутизация его не блокирует, и он обходит DNS Throne, поэтому тест на утечки показывает этого DNS-провайдера. Отключите безопасный DNS в настройках конфиденциальности или безопасности браузера, а также DNS over HTTPS для адаптера в параметрах Windows.
QUIC
QUIC не вызывает утечек DNS. Но если Google, YouTube и другие сайты с QUIC (HTTP/3 поверх UDP) загружаются медленно или не открываются, а другие сайты работают, возможно, ваш прокси плохо передаёт UDP. В Chrome откройте chrome://flags/, установите для Experimental QUIC protocol значение Disabled и нажмите Relaunch.
Утечка сохраняется?
- Проверьте маршрутизацию. Домены, которые ваши правила направляют напрямую, намеренно разрешаются через
DNS для прямых запросов(Direct DNS). Ожидаемые результаты см. в разделе Тесты на утечку DNS. - Приостановите защитное ПО. Некоторые антивирусы и брандмауэры фильтруют или перенаправляют DNS. Проведите тест без них или добавьте исключение для Throne.
- Отключите другие VPN-приложения. Они тоже меняют настройки DNS и правила брандмауэра.
- Используйте kill switch. Он блокирует весь трафик в обход Throne, включая DNS к вашей локальной сети, даже когда ни один профиль не запущен.