Как включить поддержку DNS over HTTPS (DoH) в Windows 10

DNS поверх HTTPS (DoH) — экспериментальный протокол для выполнения разрешения DNS по протоколу HTTPS. Целью этого метода является повышение конфиденциальности и безопасности пользователей путём предотвращения перехвата и манипулирования данными DNS с помощью атак типа «Атака посредника»[1]. По состоянию на март 2018 годаGoogle и Mozilla Foundation тестируют версии DNS по протоколу HTTPS.

В Windows 10 с версии сборки 19628 (для получении этой версии на день написания статьи необходимо быть активным участником программы Windows Insider.

Обратите внимание, что после тестирования этого функционала в Windows 10, ручное включение через реестр не понадобиться.

Для включения поддержки (DoH) необходимо.

  1. Иметь версию Windows 10 19628 и старше
  2. Открыть редактор реестра (Win+R => в открывшемся окне набрать «regedit» и на жать кнопку ОК
Запуск редактора реестра
  1. Перейти в следующий раздел реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters
  1. Создайте новую запись в реестре типа DWORD с именем «EnableAutoDoh» и значением 2.
  2. После перезагрузки компьютера DoH будет активен.

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

Владелец сервераIP-адреса сервера
Cloudflare1.1.1.1
1.0.0.1
2606:4700:4700::1111
2606:4700:4700::1001
Google8.8.8.8
8.8.4.4
2001:4860:4860::8888
2001:4860:4860::8844
Quad99.9.9.9
149.112.112.112
2620: fe :: fe
2620: fe :: fe: 9
Список необходимых DNS провайдеров

Как проверить работу DOH

Для тестирования DoH нам необходимо проверить, что отсутствует DNS трафика в виде простого текста. Это можно сделать с помощью встроенного анализатора сетевого трафика Packetmon.

  1. Запустите командную строку или PowerShell.
  2. Удалите все фильтры анализатора использовав команду
pktmon filter remove
  1. Добавьте фильтр для 53 порта который используется для DNS запросов.
pktmon filter add -p 53
  1. Начните регистрацию трафика в реальном времени при помощи следующей команды:
pktmon start --etw -m real-time

В случае если DoH работает правильно, то ни одного пакета не будет зарегистрированно.

Как зарегистрировать свой сервер DoH в Windows 10.

Если вы пытаетесь протестировать DoH-сервер, которого еще нет в нашем списке авто-продвижения, например, DoH-серверы вашего провайдера, вы можете добавить его в наш список вручную с помощью командной строки.

Определите IP адрес необходимого DNS сервера для подключения и в формате следующего шаблона. И выполните полученную конструкцию в командной строке от имени администратора.

netsh dns add encryption server=<your-server’s-IP-address> dohtemplate=<your-server’s-DoH-URI-template>

Чтобы проверить был применен используемый шаблон верно к общеизвестному списку серверов DoH, выполните эту команду

netsh dns show encryption server=<your-server’s-IP-address>

По мотивам статьи