"Коротко:
<br />
DNS over HTTPS шифрует DNS-запросы через HTTPS-туннель. Провайдер перестаёт видеть, какие сайты ты открываешь. Настраивается в Windows 11, Windows 10, Chrome, Firefox, Opera и на роутере Keenetic — за 5-10 минут.<br />
<h2>Что происходит без DoH и почему это проблема</h2>
<p>Ты открываешь браузер. Вводишь адрес сайта. До того как загрузится первый байт — твой компьютер отправляет <a class="wpil_keyword_link" href="https://it-apteka.com/tag/dns/" target="_blank" rel="noopener" title="DNS" data-wpil-keyword-link="linked" data-wpil-monitor-id="1774">DNS</a>-запрос: «а какой IP у этого домена?. Этот запрос летит в открытом виде. Провайдер его видит. Системный администратор на работе — видит. Любой, кто сидит в той же <a class="wpil_keyword_link" href="https://it-apteka.com/category/networks/" target="_blank" rel="noopener" title="Сети" data-wpil-keyword-link="linked" data-wpil-monitor-id="1772">сети</a> в кафе — тоже видит.</p>
<p>HTTPS шифрует содержимое страницы. Но DNS-запрос до установки соединения — нет. Вот тут и живёт дыра в приватности.</p>
<p>DNS over HTTPS закрывает эту дыру. Запросы идут через зашифрованный HTTPS-туннель на порт 443 — тот же, что у обычного веб-трафика. Отличить DoH от обычного HTTPS практически невозможно без глубокой инспекции трафика.</p>
<pre class="mermaid">%%{init: {
'theme': 'base',
'themeVariables': {
'primaryColor': '#ffffff',
'primaryTextColor': '#1e293b',
'primaryBorderColor': '#94a3b8',
'lineColor': '#64748b',
'fontSize': '15px',
'fontFamily': 'ui-sans-serif, system-ui, sans-serif'
},
'flowchart': {'curve': 'linear', 'nodeSpacing': 50, 'rankSpacing': 50}
}}%%
flowchart TD
A["Браузер"] --> B["Обычный DNS (порт 53)"]
A --> C["DNS over HTTPS (порт 443)"]
B --> D["Открытый текст - виден провайдеру"]
C --> E["HTTPS шифрование"]
E --> F["DoH-сервер Cloudflare / Google / Яндекс"]
style A fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
style B fill:#f8fafc,stroke:#ef4444,stroke-width:2px,color:#991b1b
style C fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
style D fill:#f8fafc,stroke:#ef4444,stroke-width:2px,color:#991b1b
style E fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
style F fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
</pre>
<h2>DoH vs DoT: в чём разница</h2>
<p><a href="https://it-apteka.com/dns-over-tls-nastrojka-dot-na-android-keenetic-i-v-nulls-proxy/" title="DNS over TLS: настройка DoT на Android, Keenetic и в Nulls Proxy" target="_blank" rel="noopener" data-wpil-monitor-id="1793">DNS over TLS</a> (DoT) тоже шифрует DNS-запросы, но работает на порту 853. Его легче заблокировать — достаточно закрыть один порт. DoH идёт по 443-му порту вместе со всем остальным HTTPS-трафиком. Провайдеру придётся блокировать весь HTTPS, чтобы остановить DoH — это уже ядерный вариант, который никто не применяет.</p>
<p>Для домашнего пользователя DoH удобнее. Для корпоративной сети с централизованным управлением DNS — DoT даёт больше контроля. Мы разбираем DoH.</p>
<table>
<thead>
<tr>
<th>Параметр</th>
<th>DNS over HTTPS (DoH)</th>
<th>DNS over TLS (DoT)</th>
<th>Обычный DNS</th>
</tr>
</thead>
<tbody>
<tr>
<td>Порт</td>
<td>443</td>
<td>853</td>
<td>53</td>
</tr>
<tr>
<td>Шифрование</td>
<td>HTTPS/TLS</td>
<td>TLS</td>
<td>Нет</td>
</tr>
<tr>
<td>Сложность блокировки</td>
<td>Высокая</td>
<td>Средняя</td>
<td>Низкая</td>
</tr>
<tr>
<td>Поддержка в <a class="wpil_keyword_link" href="https://it-apteka.com/category/windows-server/" target="_blank" rel="noopener" title="Windows Server" data-wpil-keyword-link="linked" data-wpil-monitor-id="1771">Windows</a></td>
<td>Windows 10/11</td>
<td>Только через сторонний софт</td>
<td>Нативно</td>
</tr>
<tr>
<td>Поддержка в браузерах</td>
<td>Chrome, Firefox, Opera, Edge</td>
<td>Нет нативной</td>
<td>Нативно</td>
</tr>
</tbody>
</table>
<h2>DNS over HTTPS серверы: что выбрать</h2>
<p>Перед настройкой реши, кому доверяешь свои DNS-запросы. Провайдера ты меняешь на другого посредника. Разница — в репутации и политике логирования.</p>
<table>
<thead>
<tr>
<th>Провайдер</th>
<th>DoH URL</th>
<th>IP адреса</th>
<th>Логи</th>
</tr>
</thead>
<tbody>
<tr>
<td>Cloudflare</td>
<td>https://cloudflare-dns.com/dns-query</td>
<td>1.1.1.1 / 1.0.0.1</td>
<td>Не хранит постоянно</td>
</tr>
<tr>
<td>Google</td>
<td>https://dns.google/dns-query</td>
<td>8.8.8.8 / 8.8.4.4</td>
<td>Хранит временно</td>
</tr>
<tr>
<td>Quad9</td>
<td>https://dns.quad9.net/dns-query</td>
<td>9.9.9.9</td>
<td>Не хранит, блокирует малварь</td>
</tr>
<tr>
<td>AdGuard</td>
<td>https://dns.adguard.com/dns-query</td>
<td>94.140.14.14</td>
<td>Блокирует рекламу и трекеры</td>
</tr>
<tr>
<td>Яндекс DNS</td>
<td>https://common.dot.dns.yandex.net/dns-query</td>
<td>77.88.8.8 / 77.88.8.1</td>
<td>Хранит, RU-юрисдикция</td>
</tr>
</tbody>
</table>
<p>Cloudflare — первый выбор для большинства. Быстрый, с нормальной политикой приватности, серверы по всему миру. Google работает стабильно, но данные крутятся внутри Google-экосистемы. Quad9 — если нужна дополнительная <a class="wpil_keyword_link" href="https://it-apteka.com/category/security/" target="_blank" rel="noopener" title="Безопасность" data-wpil-keyword-link="linked" data-wpil-monitor-id="1775">защита</a> от фишинга.</p>
<h2>Как включить DNS over HTTPS в Windows 11</h2>
<p>В Windows 11 DoH встроен нативно. Настраивается через параметры сети — без сторонних утилит.</p>
<h3>Шаг 1. Открой настройки сети</h3>
<p>Зайди в Параметры — Сеть и Интернет. Выбери своё подключение: Ethernet или Wi-Fi. Нажми «Свойства оборудования».</p>
<h3>Шаг 2. Пропиши DNS-сервер вручную</h3>
<p>В разделе «Назначение DNS-сервера» нажми «Изменить». Переключи с «Автоматически (DHCP)» на «Вручную». Включи IPv4.</p>
<p>Вот тут вводи адреса. Для Cloudflare:</p>
<pre><code class="language-text">
Основной DNS: 1.1.1.1
Альтернативный DNS: 1.0.0.1
</code></pre>
<h3>Шаг 3. Включи шифрование</h3>
<p>Рядом с каждым адресом появится выпадающий список «Предпочтительное шифрование DNS». Выбери «Только зашифрованное (DNS over HTTPS)».</p>
<p>Нажми «Сохранить». Всё. Windows теперь шифрует DNS-запросы на уровне всей системы.</p>
"Важно
<br />
Windows 11 не знает заранее, какие IP-адреса поддерживают DoH. Она проверяет по встроенному списку. Cloudflare (1.1.1.1), Google (8.8.8.8) и Quad9 (9.9.9.9) в нём есть. Если вводишь нестандартный <a title="Как определить, что Windows серверу не хватает памяти: шпаргалка IT-инженера с примерами" href="https://it-apteka.com/kak-opredelit-chto-windows-serveru-ne-hvataet-pamjati-shpargalka/" target="_blank" rel="noopener" data-wpil-monitor-id="1750">сервер — Windows</a> может молча откатиться на обычный DNS без предупреждения.<br />
<h3>Проверка через PowerShell</h3>
<p>Убедись что настройки применились:</p>
<pre><code class="language-powershell">
Get-DnsClientDohServerAddress
</code></pre>
<p>Должен увидеть список серверов с DohTemplate — URL вида https://… Если список пустой — настройки не применились, повтори шаги.</p>
<h2>DNS over HTTPS в Windows 10</h2>
<p>В Windows 10 нативной поддержки DoH нет. Microsoft добавила её только в Windows 11. Есть три пути.</p>
<h3>Путь 1. Включить DoH в браузере</h3>
<p>Самый простой. Каждый браузер поддерживает DoH независимо от системных настроек. Настраиваешь один раз — работает только для этого браузера. Подходит для большинства задач.</p>
<h3>Путь 2. dnscrypt-proxy</h3>
<p>Лёгкий проксирующий сервис. Перехватывает системные DNS-запросы и пересылает их через DoH или DoT. Работает на уровне системы — закрывает весь трафик, не только браузер.</p>
<p>Скачай с GitHub (dnscrypt-proxy/dnscrypt-proxy), распакуй, отредактируй dnscrypt-proxy.toml:</p>
<pre><code class="language-text">
server_names = ['cloudflare', 'cloudflare-ipv6']
listen_addresses = ['127.0.0.1:53']
</code></pre>
<p>Установи как службу:</p>
<pre><code class="language-powershell">
.\dnscrypt-proxy.exe -service install
.\dnscrypt-proxy.exe -service start
</code></pre>
<p>Потом в <a title="ACME + Nginx: настройка Let’s Encrypt вручную и через Nginx Proxy Manager" href="https://it-apteka.com/acme-nginx-nastrojka-let-s-encrypt-vruchnuju-i-cherez-nginx-proxy-manager/" target="_blank" rel="noopener" data-wpil-monitor-id="1752">настройках сетевого адаптера пропиши DNS вручную</a>: 127.0.0.1. Все запросы пойдут через dnscrypt-proxy.</p>
<h3>Путь 3. Включить в роутере</h3>
<p>Если роутер поддерживает DoH — настраиваешь один раз на роутере, все устройства в сети автоматически получают зашифрованный DNS. Раздел про Keenetic ниже.</p>
<h2>DNS over HTTPS в Google Chrome</h2>
<p>Chrome проверяет твой текущий DNS-сервер и если находит его в списке поддерживаемых DoH-серверов — автоматически переключается. Можно и вручную принудить.</p>
<p>Открой в адресной строке:</p>
<pre><code class="language-text">
chrome://settings/security
</code></pre>
<p>Прокрути до раздела «Расширенные настройки». Найди «Использовать безопасный DNS». Включи переключатель. Выбери провайдера из списка или введи свой URL в поле «Другой».</p>
<p>Для Cloudflare:</p>
<pre><code class="language-text">
https://cloudflare-dns.com/dns-query
</code></pre>
<p>Для Google DNS:</p>
<pre><code class="language-text">
https://dns.google/dns-query
</code></pre>
<h2>DNS over HTTPS в Firefox</h2>
<p>Firefox был одним из первых браузеров с поддержкой DoH. Здесь настройка через about:config — чуть глубже, но зато полный контроль.</p>
<h3>Быстрый способ через настройки</h3>
<p>Открой меню — Настройки. Прокрути вниз до раздела «Сеть». Нажми «Настройки…». В самом низу найди «Включить DNS over HTTPS».</p>
<p>Выбери провайдера: Cloudflare или NextDNS. Или выбери «Другой» и вставь свой URL.</p>
<h3>Через about:config для точной настройки</h3>
<p>Введи в адресную строку:</p>
<pre><code class="language-text">
about:config
</code></pre>
<p>Найди и измени параметры:</p>
<pre><code class="language-text">
network.trr.mode = 3
(0 - выкл, 2 - DoH с fallback на обычный, 3 - только DoH, 5 - принудительно выкл)
network.trr.uri = https://cloudflare-dns.com/dns-query
</code></pre>
<p>Режим 3 — самый строгий. Если DoH недоступен — DNS не резолвится вообще. Для параноиков и тех, кто не хочет случайного fallback на открытый DNS.</p>
"Firefox
<br />
В корпоративной сети Firefox может получить политику через Group Policy или canary-домен use-application-dns.net. Если этот домен недоступен — Firefox отключает DoH. Это сделано специально, чтобы не ломать корпоративные DNS-фильтры. Дома это не мешает.<br />
<h2>DNS over HTTPS в Opera</h2>
<p>Opera — на движке Chromium, поэтому настройка похожа на Chrome. Есть нюанс: Opera может включить DoH автоматически при включённом VPN. Проверь оба места.</p>
<p>Открой:</p>
<pre><code class="language-text">
opera://settings/privacy
</code></pre>
<p>Найди раздел «Безопасность». Включи «Использовать DNS over HTTPS вместо системных настроек DNS». Выбери провайдера или вставь URL вручную.</p>
<p>Если в Opera включён встроенный <a title="Какой VPN сервер установить на Ubuntu для нативного подключения" href="https://it-apteka.com/kakoj-vpn-server-ustanovit-na-ubuntu-dlja-nativnogo-podkljuchenija/" target="_blank" rel="noopener" data-wpil-monitor-id="1751">VPN — DNS уже идёт через серверы</a> Opera. DoH при включённом VPN добавляет ещё один уровень, но фактически DNS резолвит VPN-сервер Opera. Реши сам, кому больше доверяешь.</p>
<h2>DNS over HTTPS на Keenetic</h2>
<p><a title="DynDNS: полный гайд по настройке динамического DNS на роутере, Keenetic и MikroTik — бесплатно и без боли" href="https://it-apteka.com/dyndns-polnyj-gajd-po-nastrojke-dinamicheskogo-dns-na-routere-keenetic-i-mikrotik-besplatno-i-bez-boli/" target="_blank" rel="noopener" data-wpil-monitor-id="1745">Настройка на роутере</a> — лучшее решение для домашней сети. Один раз настроил — все устройства: смартфоны, Smart TV, планшеты, IoT-мусор — получают зашифрованный DNS автоматически. Не надо лезть в настройки каждого устройства.</p>
<p>Keenetic поддерживает DoH начиная с версии прошивки 3.1.</p>
<h3>Шаг 1. Обнови прошивку</h3>
<p>Зайди в веб-интерфейс Keenetic. Система — Обновить прошивку. Если версия ниже 3.1 — обнови.</p>
<h3>Шаг 2. Установи компонент «DNS-over-HTTPS прокси»</h3>
<p>Система — Параметры компонентов. Найди «DNS-over-HTTPS прокси». Установи.</p>
<h3>Шаг 3. Настрой DoH</h3>
<p>Интернет — DNS. Переключи на «DNS-over-HTTPS». Вставь URL сервера.</p>
<p>Для Cloudflare:</p>
<pre><code class="language-text">
https://cloudflare-dns.com/dns-query
</code></pre>
<p>Для Quad9:</p>
<pre><code class="language-text">
https://dns.quad9.net/dns-query
</code></pre>
<p>Сохрани. Роутер перезапустит DNS-службу. Все новые DNS-запросы от устройств в сети пойдут через DoH.</p>
<pre class="mermaid">%%{init: {
'theme': 'base',
'themeVariables': {
'primaryColor': '#ffffff',
'primaryTextColor': '#1e293b',
'primaryBorderColor': '#94a3b8',
'lineColor': '#64748b',
'fontSize': '15px',
'fontFamily': 'ui-sans-serif, system-ui, sans-serif'
},
'flowchart': {'curve': 'linear', 'nodeSpacing': 50, 'rankSpacing': 50}
}}%%
flowchart TD
A["Смартфон"] --> E["Keenetic роутер"]
B["ПК / ноутбук"] --> E
C["Smart TV"] --> E
D["IoT устройства"] --> E
E --> F["DoH прокси на роутере"]
F --> G["Cloudflare / Google / Quad9"]
style E fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
style F fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
style G fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
</pre>
<h3>Keenetic через CLI (для тех кто не боится)</h3>
<p>Если удобнее через командную строку — подключись по Telnet или через веб-терминал и выполни:</p>
<pre><code class="language-bash">
ip dns proxy name cloudflare doh url https://cloudflare-dns.com/dns-query
ip dns proxy name cloudflare doh enable
ip name-server dns-proxy
system configuration save
</code></pre>
<p>Проверь статус:</p>
<pre><code class="language-bash">
show ip dns proxy
</code></pre>
<h2>Яндекс DNS over HTTPS</h2>
<p>Яндекс предоставляет три варианта серверов с DoH:</p>
<table>
<thead>
<tr>
<th>Тип</th>
<th>DoH URL</th>
<th>IP</th>
<th>Особенности</th>
</tr>
</thead>
<tbody>
<tr>
<td>Базовый</td>
<td>https://common.dot.dns.yandex.net/dns-query</td>
<td>77.88.8.8 / 77.88.8.1</td>
<td>Без фильтрации</td>
</tr>
<tr>
<td>Безопасный</td>
<td>https://safe.dot.dns.yandex.net/dns-query</td>
<td>77.88.8.88 / 77.88.8.2</td>
<td>Блокирует вирусы и мошенников</td>
</tr>
<tr>
<td>Семейный</td>
<td>https://family.dot.dns.yandex.net/dns-query</td>
<td>77.88.8.7 / 77.88.8.3</td>
<td>Блокирует взрослый контент</td>
</tr>
</tbody>
</table>
<p>Серверы Яндекса физически находятся в России. Это означает: данные хранятся под российской юрисдикцией. Если это важно — учти при выборе.</p>
<h2>Как проверить DNS over HTTPS</h2>
<p>Включил — проверь. Верить на слово настройкам не стоит.</p>
<h3>Проверка через браузер</h3>
<p>Открой:</p>
<pre><code class="language-text">
https://1.1.1.1/help
</code></pre>
<p>Сервис Cloudflare покажет: «Using DNS over HTTPS (DoH) — Yes» или «No». Самая простая проверка.</p>
<p>Альтернативный вариант от Cloudflare:</p>
<pre><code class="language-text">
https://www.cloudflare.com/ssl/encrypted-sni/
</code></pre>
<p>Проверит DNS over HTTPS, DNSSEC, TLS 1.3 и Encrypted SNI одним тестом.</p>
<h3>Проверка через командную строку</h3>
<p>Windows <a class="wpil_keyword_link" href="https://it-apteka.com/tag/powershell/" target="_blank" rel="noopener" title="PowerShell" data-wpil-keyword-link="linked" data-wpil-monitor-id="1776">PowerShell</a>:</p>
<pre><code class="language-powershell">
Resolve-DnsName -Name cloudflare.com -Type A
</code></pre>
<p>Посмотри в разделе NameHost или Address — если разрешение прошло и в настройках выставлен DoH-сервер, запрос ушёл через него.</p>
<p>Через nslookup с явным указанием сервера:</p>
<pre><code class="language-powershell">
nslookup cloudflare.com 1.1.1.1
</code></pre>
<h3>Проверка через dig (Linux / WSL)</h3>
<pre><code class="language-bash">
dig @1.1.1.1 cloudflare.com
</code></pre>
<p>Для явной проверки DoH через curl:</p>
<pre><code class="language-bash">
curl -H 'accept: application/dns-json' 'https://cloudflare-dns.com/dns-query?name=example.com&type=A'
</code></pre>
<p>Если вернулся JSON с полем «Answer» и IP-адресами — DoH работает.</p>
<h3>Wireshark для параноиков</h3>
<p>Запусти захват трафика. Фильтр:</p>
<pre><code class="language-text">
udp.port == 53
</code></pre>
<p>Если DoH настроен правильно — трафика на порту 53 не будет. Все DNS-запросы растворятся в потоке HTTPS на 443-м порту и станут неотличимы от обычного браузерного трафика. Чем и хорош DoH.</p>
<h2>Системные требования</h2>
<table>
<thead>
<tr>
<th>Платформа</th>
<th>Минимальная версия</th>
<th>Нативная поддержка DoH</th>
</tr>
</thead>
<tbody>
<tr>
<td>Windows 11</td>
<td>Любая</td>
<td>Да, в настройках сети</td>
</tr>
<tr>
<td>Windows 10</td>
<td>20H1+ (для Preview)</td>
<td>Только через dnscrypt-proxy или браузер</td>
</tr>
<tr>
<td>Chrome</td>
<td>83+</td>
<td>Да</td>
</tr>
<tr>
<td>Firefox</td>
<td>62+</td>
<td>Да</td>
</tr>
<tr>
<td>Opera</td>
<td>70+</td>
<td>Да</td>
</tr>
<tr>
<td>Edge</td>
<td>85+</td>
<td>Да</td>
</tr>
<tr>
<td>Keenetic</td>
<td>Прошивка 3.1+</td>
<td>Да, через компонент DoH прокси</td>
</tr>
<tr>
<td>Android</td>
<td>9 (Pie)</td>
<td>DNS over TLS нативно, DoH через браузер</td>
</tr>
<tr>
<td>iOS</td>
<td>14+</td>
<td>Через профили конфигурации</td>
</tr>
</tbody>
</table>
<h2>Порты и протоколы</h2>
<table>
<thead>
<tr>
<th>Протокол</th>
<th>Порт</th>
<th>Транспорт</th>
<th>Шифрование</th>
</tr>
</thead>
<tbody>
<tr>
<td>DNS (обычный)</td>
<td>53</td>
<td>UDP / TCP</td>
<td>Нет</td>
</tr>
<tr>
<td>DNS over TLS (DoT)</td>
<td>853</td>
<td>TCP</td>
<td>TLS</td>
</tr>
<tr>
<td>DNS over HTTPS (DoH)</td>
<td>443</td>
<td>TCP</td>
<td>HTTPS / TLS</td>
</tr>
<tr>
<td>DNS over QUIC (DoQ)</td>
<td>853</td>
<td>QUIC</td>
<td>TLS 1.3</td>
</tr>
</tbody>
</table>
<h2>Безопасность: что DoH не решает</h2>
<p>DoH скрывает DNS-запросы. Но есть вещи, которые он не закрывает.</p>
<p>SNI (Server Name Indication) — расширение TLS, которое передаёт имя <a title="Установка и настройка Uptime Kuma: self-hosted мониторинг сайтов за 5 минут" href="https://it-apteka.com/uptime-kuma-alerting-bez-zamorochek-dlja-admina-kotoryj-cenit-vremja/" target="_blank" rel="noopener" data-wpil-monitor-id="1746">сайта в открытом виде при установке</a> HTTPS-соединения. Провайдер всё ещё видит, к какому домену ты подключаешься, даже если DNS-запрос зашифрован. Частично решается через ECH (Encrypted Client Hello) — но это отдельная история.</p>
<p>IP-адрес назначения виден всегда. Если сайт живёт на выделенном IP — провайдер может вычислить домен по IP даже без DNS-лога.</p>
<p>DoH — это один слой защиты. Не серебряная пуля. Для <a title="VPN на MikroTik: полный гайд 2026 — WireGuard, L2TP/IPsec, IKEv2, настройка сервера и клиента" href="https://it-apteka.com/vpn-na-mikrotik-polnyj-gajd-2026-wireguard-l2tp-ipsec-ikev2-nastrojka-servera-i-klienta/" target="_blank" rel="noopener" data-wpil-monitor-id="1747">полной приватности нужен ещё VPN</a> или Tor.</p>
"Firewall
<br />
Если у тебя настроен локальный DNS-сервер и ты хочешь принудительно гнать весь трафик через него — заблокируй исходящий UDP 53 для всех кроме своего DNS. DoH на 443-м порту заблокировать без DPI практически невозможно. Учти это в корпоративной среде.<br />
<h2>Troubleshooting: что пошло не так</h2>
<h3>Ошибка: DNS не резолвится после включения DoH</h3>
<p>Причина: <a title="Сервер активации Windows: подключение, настройка и решение ошибок KMS" href="https://it-apteka.com/server-aktivacii-windows-podkljuchenie-nastrojka-i-reshenie-oshibok-kms/" target="_blank" rel="noopener" data-wpil-monitor-id="1753">Windows не распознала сервер</a> как DoH-совместимый и не имеет fallback.</p>
<p>Решение: убедись что IP-адрес <a title="Сервер активации Windows (KMS) в Docker: варианты развёртывания и интеграция с Active Directory" href="https://it-apteka.com/1243-2/" target="_blank" rel="noopener" data-wpil-monitor-id="1754">сервера есть в списке Windows</a> Known DoH Servers. Проверь:</p>
<pre><code class="language-powershell">
Get-DnsClientDohServerAddress | Select-Object ServerAddress, DohTemplate
</code></pre>
<p>Если нужного сервера нет — добавь вручную:</p>
<pre><code class="language-powershell">
Add-DnsClientDohServerAddress -ServerAddress "94.140.14.14" -DohTemplate "https://dns.adguard.com/dns-query" -AllowFallbackToUdp $False -AutoUpgrade $True
</code></pre>
<h3>Ошибка: в Chrome DoH включён, но 1.1.1.1/help показывает «No»</h3>
<p>Причина: Chrome проверяет текущий системный DNS и пытается найти его DoH-аналог. Если системный DNS — сервер провайдера без DoH — Chrome молча не переключается.</p>
<p>Решение: принудительно выбери провайдера в настройках Chrome вместо «Системный». Укажи Cloudflare или Google явно.</p>
<h3>Ошибка: Firefox игнорирует настройки DoH в корпоративной сети</h3>
<p>Причина: обнаружен canary-домен use-application-dns.net, который недоступен — Firefox отключает DoH автоматически.</p>
<p>Решение: в about:config установи:</p>
<pre><code class="language-text">
network.trr.mode = 3
</code></pre>
<p>Режим 3 игнорирует canary-домен и включает DoH принудительно.</p>
<h3>Ошибка: Keenetic не сохраняет настройки DoH после перезагрузки</h3>
<p>Причина: компонент «DNS-over-HTTPS прокси» не установлен или прошивка устарела.</p>
<p>Решение: проверь версию прошивки (минимум 3.1), убедись что компонент установлен через Система — Параметры компонентов, сохрани конфигурацию явно:</p>
<pre><code class="language-bash">
system configuration save
</code></pre>
<h3>Ошибка: сайты открываются медленнее после включения DoH</h3>
<p>Причина: DoH добавляет задержку на установку HTTPS-соединения с DoH-сервером. Особенно заметно если сервер далеко.</p>
<p>Решение: попробуй Cloudflare 1.1.1.1 — у него самые низкие задержки из публичных DoH-серверов. Или используй локальный кэширующий резолвер с DoH-апстримом.</p>
<h3>Ошибка: DoH включён, но DNSSEC не проходит</h3>
<p>Причина: не все DoH-серверы включают DNSSEC-валидацию по умолчанию.</p>
<p>Решение: Cloudflare и Quad9 делают DNSSEC-валидацию. Google тоже. Проверь на:</p>
<pre><code class="language-text">
https://dnssec-analyzer.verisignlabs.com/
</code></pre>
<h2>Альтернативные решения</h2>
<h3>NextDNS — DoH с фильтрацией и статистикой</h3>
<p>NextDNS даёт персональный DoH-эндпоинт с кастомными списками блокировки, статистикой запросов и управлением через веб-интерфейс. Бесплатный план — 300 000 запросов в месяц. Хорошо подходит для семейной сети с детьми.</p>
<p>URL выглядит так:</p>
<pre><code class="language-text">
https://dns.nextdns.io/ВАШИ_ID
</code></pre>
<h3>Pi-hole + cloudflared</h3>
<p>Если у тебя Raspberry Pi или старый мини-ПК — поставь Pi-hole для блокировки рекламы и cloudflared как DoH-клиент. Pi-hole принимает запросы по обычному DNS 53-му порту от устройств в сети, cloudflared пересылает их в Cloudflare через DoH. Провайдер не видит ничего, реклама режется на уровне DNS.</p>
<h3>AdGuard Home</h3>
<p>Аналог Pi-hole с нативной поддержкой DoH и DoT без дополнительных компонентов. Ставится как <a class="wpil_keyword_link" href="https://it-apteka.com/tag/docker/" target="_blank" rel="noopener" title="Docker" data-wpil-keyword-link="linked" data-wpil-monitor-id="1773">Docker</a>-контейнер за 10 минут:</p>
<pre><code class="language-bash">
docker run --name adguardhome \
-v /opt/adguardhome/work:/opt/adguardhome/work \
-v /opt/adguardhome/conf:/opt/adguardhome/conf \
-p 53:53/tcp -p 53:53/udp \
-p 3000:3000/tcp \
adguard/adguardhome
</code></pre>
<p>После настройки выставляешь его IP как <a href="https://it-apteka.com/blokirovka-reklamy-polnoe-rukovodstvo-po-ustanovke-i-nastrojke-v-2026-godu/" target="_blank" rel="noopener" data-wpil-monitor-id="1807">DNS</a> на роутере — и все устройства получают DoH + блокировку рекламы.</p>
<h2>Профилактика: как не сломать снова</h2>
<p><a title="Настройка DNS-over-HTTPS (DoH) на MikroTik" href="https://it-apteka.com/nastrojka-dns-over-https-doh-na-mikrotik/" target="_blank" rel="noopener" data-wpil-monitor-id="1748">DoH — тихая настройка</a>. Включил и забыл. Но несколько вещей стоит держать в голове.</p>
<p>После обновления <a title="DIG: продвинутая диагностика DNS для Linux и Windows" href="https://it-apteka.com/dig-shpargalka-it-inzhenera-s-primerami/" target="_blank" rel="noopener" data-wpil-monitor-id="1755">Windows — проверяй настройки DNS</a>. Крупные обновления иногда сбрасывают параметры сети к дефолтным. Команда для быстрой проверки:</p>
<pre><code class="language-powershell">
Get-DnsClientServerAddress | Select-Object -ExpandProperty ServerAddresses
</code></pre>
<p>Если видишь адреса провайдера вместо 1.1.1.1 или 8.8.8.8 — переназначь.</p>
<p>После смены провайдера или замены роутера — DNS может автоматически переключиться на <a title="DHCP Snooping — что это такое и как защитить сеть от Rogue DHCP сервера" href="https://it-apteka.com/dhcp-snooping-chto-jeto-takoe-i-kak-zashhitit-set-ot-rogue-dhcp-servera-2/" target="_blank" rel="noopener" data-wpil-monitor-id="1749">сервер нового провайдера по DHCP</a>. Зафиксируй DNS вручную, а не через автоматическое получение.</p>
<p>Один раз в год заходи на 1.1.1.1/help и проверяй. Три секунды. Зато точно знаешь что всё на месте.</p>
<h2>FAQ</h2>
<h3>Почему после включения DoH некоторые сайты перестали открываться?</h3>
<p>Скорее всего DoH-сервер блокирует домен. Quad9 и AdGuard блокируют вредоносные и фишинговые сайты. Если легитимный сайт попал в блок-лист — переключись на Cloudflare 1.1.1.1 или Google 8.8.8.8 — они не фильтруют контент. Временная проверка: отключи DoH, если сайт открылся — проблема в фильтрации.</p>
<h3>Как проверить работает ли DNS over HTTPS прямо сейчас?</h3>
<p>Открой https://1.1.1.1/help в браузере. Сервис Cloudflare покажет статус DoH напрямую. Второй вариант: https://www.cloudflare.com/ssl/encrypted-sni/ — покажет весь стек защиты включая DoH, DNSSEC и TLS.</p>
<h3>Что если провайдер блокирует DoH серверы?</h3>
<p>Теоретически провайдер может заблокировать IP-адреса Cloudflare или Google. На практике это означает блокировку огромного куска интернета, что нереально. Если всё же столкнулся — используй dnscrypt-proxy с несколькими серверами в конфиге: он автоматически переключается на доступный.</p>
<h3>DoH и VPN — нужно ли включать оба?</h3>
<p>При включённом VPN DNS-запросы обычно идут через VPN-сервер. DoH в браузере при этом работает поверх VPN-туннеля — двойное шифрование. Это не вредит, но и особого смысла нет: VPN уже скрывает DNS от провайдера. Исключение: если VPN-клиент имеет утечки DNS — DoH их не закроет, нужно исправлять DNS leak в настройках VPN.</p>
<h3>Влияет ли DoH на скорость интернета?</h3>
<p>Незначительно. DoH добавляет минимальную задержку на установку TLS-сессии с DoH-сервером при первом запросе. Последующие запросы используют keep-alive и идут быстро. Cloudflare 1.1.1.1 показывает медианную задержку DNS около 11 мс — быстрее большинства провайдерских серверов.</p>
<h3>Нужно ли включать DoH в каждом браузере отдельно?</h3>
<p>Если <a title="BitLocker в Windows: как включить, отключить и восстановить ключ" href="https://it-apteka.com/bitlocker-v-windows-kak-vkljuchit-otkljuchit-i-vosstanovit-kljuch/" target="_blank" rel="noopener" data-wpil-monitor-id="1756">включил DoH на уровне Windows</a> 11 или на роутере — браузеры, которые используют системный DNS, подхватят его автоматически. Но Firefox всегда использует собственные настройки DoH независимо от системы. Chrome при явно указанном провайдере в настройках тоже игнорирует системный DNS. Для полного покрытия — настрой и на уровне системы, и в Firefox отдельно.</p>
<h2>Итог</h2>
<p>Ты настроил DoH. Теперь DNS-запросы идут в зашифрованном HTTPS-туннеле. Провайдер видит трафик на 443-й порт — неотличимый от обычного браузинга. Никакого 53-го порта в открытом виде, никаких логов на стороне провайдера о том, какие домены ты резолвишь.</p>
<p>Это не магия и не полная анонимность — SNI и IP назначения всё ещё торчат наружу. Но DoH убирает самый простой способ слежки за твоим трафиком. За 5 минут настройки — нормальный результат.</p>
"Если
<br />
Проверь на 1.1.1.1/help — там написано чёрным по белому. Если DoH показывает "No" после всех настроек — пиши в комментарии с указанием ОС и браузера, разберёмся.<br />
Коротко: что делает DNS over HTTPS
DNS over HTTPS шифрует DNS-запросы через HTTPS-туннель. Провайдер перестаёт видеть, какие сайты ты открываешь. Настраивается в Windows 11, Windows 10, Chrome, Firefox, Opera и на роутере Keenetic — за 5-10 минут.
Что происходит без DoH и почему это проблема
Ты открываешь браузер. Вводишь адрес сайта. До того как загрузится первый байт — твой компьютер отправляет DNS-запрос: «а какой IP у этого домена?. Этот запрос летит в открытом виде. Провайдер его видит. Системный администратор на работе — видит. Любой, кто сидит в той же сети в кафе — тоже видит.
HTTPS шифрует содержимое страницы. Но DNS-запрос до установки соединения — нет. Вот тут и живёт дыра в приватности.
DNS over HTTPS закрывает эту дыру. Запросы идут через зашифрованный HTTPS-туннель на порт 443 — тот же, что у обычного веб-трафика. Отличить DoH от обычного HTTPS практически невозможно без глубокой инспекции трафика.
%%{init: {
'theme': 'base',
'themeVariables': {
'primaryColor': '#ffffff',
'primaryTextColor': '#1e293b',
'primaryBorderColor': '#94a3b8',
'lineColor': '#64748b',
'fontSize': '15px',
'fontFamily': 'ui-sans-serif, system-ui, sans-serif'
},
'flowchart': {'curve': 'linear', 'nodeSpacing': 50, 'rankSpacing': 50}
}}%%
flowchart TD
A["Браузер"] --> B["Обычный DNS (порт 53)"]
A --> C["DNS over HTTPS (порт 443)"]
B --> D["Открытый текст - виден провайдеру"]
C --> E["HTTPS шифрование"]
E --> F["DoH-сервер Cloudflare / Google / Яндекс"]
style A fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
style B fill:#f8fafc,stroke:#ef4444,stroke-width:2px,color:#991b1b
style C fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
style D fill:#f8fafc,stroke:#ef4444,stroke-width:2px,color:#991b1b
style E fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
style F fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
DoH vs DoT: в чём разница
DNS over TLS (DoT) тоже шифрует DNS-запросы, но работает на порту 853. Его легче заблокировать — достаточно закрыть один порт. DoH идёт по 443-му порту вместе со всем остальным HTTPS-трафиком. Провайдеру придётся блокировать весь HTTPS, чтобы остановить DoH — это уже ядерный вариант, который никто не применяет.
Для домашнего пользователя DoH удобнее. Для корпоративной сети с централизованным управлением DNS — DoT даёт больше контроля. Мы разбираем DoH.
| Параметр |
DNS over HTTPS (DoH) |
DNS over TLS (DoT) |
Обычный DNS |
| Порт |
443 |
853 |
53 |
| Шифрование |
HTTPS/TLS |
TLS |
Нет |
| Сложность блокировки |
Высокая |
Средняя |
Низкая |
| Поддержка в Windows |
Windows 10/11 |
Только через сторонний софт |
Нативно |
| Поддержка в браузерах |
Chrome, Firefox, Opera, Edge |
Нет нативной |
Нативно |
DNS over HTTPS серверы: что выбрать
Перед настройкой реши, кому доверяешь свои DNS-запросы. Провайдера ты меняешь на другого посредника. Разница — в репутации и политике логирования.
| Провайдер |
DoH URL |
IP адреса |
Логи |
| Cloudflare |
https://cloudflare-dns.com/dns-query |
1.1.1.1 / 1.0.0.1 |
Не хранит постоянно |
| Google |
https://dns.google/dns-query |
8.8.8.8 / 8.8.4.4 |
Хранит временно |
| Quad9 |
https://dns.quad9.net/dns-query |
9.9.9.9 |
Не хранит, блокирует малварь |
| AdGuard |
https://dns.adguard.com/dns-query |
94.140.14.14 |
Блокирует рекламу и трекеры |
| Яндекс DNS |
https://common.dot.dns.yandex.net/dns-query |
77.88.8.8 / 77.88.8.1 |
Хранит, RU-юрисдикция |
Cloudflare — первый выбор для большинства. Быстрый, с нормальной политикой приватности, серверы по всему миру. Google работает стабильно, но данные крутятся внутри Google-экосистемы. Quad9 — если нужна дополнительная защита от фишинга.
Как включить DNS over HTTPS в Windows 11
В Windows 11 DoH встроен нативно. Настраивается через параметры сети — без сторонних утилит.
Шаг 1. Открой настройки сети
Зайди в Параметры — Сеть и Интернет. Выбери своё подключение: Ethernet или Wi-Fi. Нажми «Свойства оборудования».
Шаг 2. Пропиши DNS-сервер вручную
В разделе «Назначение DNS-сервера» нажми «Изменить». Переключи с «Автоматически (DHCP)» на «Вручную». Включи IPv4.
Вот тут вводи адреса. Для Cloudflare:
Основной DNS: 1.1.1.1
Альтернативный DNS: 1.0.0.1
Шаг 3. Включи шифрование
Рядом с каждым адресом появится выпадающий список «Предпочтительное шифрование DNS». Выбери «Только зашифрованное (DNS over HTTPS)».
Нажми «Сохранить». Всё. Windows теперь шифрует DNS-запросы на уровне всей системы.
Важно для Windows 11
Windows 11 не знает заранее, какие IP-адреса поддерживают DoH. Она проверяет по встроенному списку. Cloudflare (1.1.1.1), Google (8.8.8.8) и Quad9 (9.9.9.9) в нём есть. Если вводишь нестандартный
сервер — Windows может молча откатиться на обычный DNS без предупреждения.
Проверка через PowerShell
Убедись что настройки применились:
Get-DnsClientDohServerAddress
Должен увидеть список серверов с DohTemplate — URL вида https://… Если список пустой — настройки не применились, повтори шаги.
DNS over HTTPS в Windows 10
В Windows 10 нативной поддержки DoH нет. Microsoft добавила её только в Windows 11. Есть три пути.
Путь 1. Включить DoH в браузере
Самый простой. Каждый браузер поддерживает DoH независимо от системных настроек. Настраиваешь один раз — работает только для этого браузера. Подходит для большинства задач.
Путь 2. dnscrypt-proxy
Лёгкий проксирующий сервис. Перехватывает системные DNS-запросы и пересылает их через DoH или DoT. Работает на уровне системы — закрывает весь трафик, не только браузер.
Скачай с GitHub (dnscrypt-proxy/dnscrypt-proxy), распакуй, отредактируй dnscrypt-proxy.toml:
server_names = ['cloudflare', 'cloudflare-ipv6']
listen_addresses = ['127.0.0.1:53']
Установи как службу:
.\dnscrypt-proxy.exe -service install
.\dnscrypt-proxy.exe -service start
Потом в настройках сетевого адаптера пропиши DNS вручную: 127.0.0.1. Все запросы пойдут через dnscrypt-proxy.
Путь 3. Включить в роутере
Если роутер поддерживает DoH — настраиваешь один раз на роутере, все устройства в сети автоматически получают зашифрованный DNS. Раздел про Keenetic ниже.
DNS over HTTPS в Google Chrome
Chrome проверяет твой текущий DNS-сервер и если находит его в списке поддерживаемых DoH-серверов — автоматически переключается. Можно и вручную принудить.
Открой в адресной строке:
chrome://settings/security
Прокрути до раздела «Расширенные настройки». Найди «Использовать безопасный DNS». Включи переключатель. Выбери провайдера из списка или введи свой URL в поле «Другой».
Для Cloudflare:
https://cloudflare-dns.com/dns-query
Для Google DNS:
https://dns.google/dns-query
DNS over HTTPS в Firefox
Firefox был одним из первых браузеров с поддержкой DoH. Здесь настройка через about:config — чуть глубже, но зато полный контроль.
Быстрый способ через настройки
Открой меню — Настройки. Прокрути вниз до раздела «Сеть». Нажми «Настройки…». В самом низу найди «Включить DNS over HTTPS».
Выбери провайдера: Cloudflare или NextDNS. Или выбери «Другой» и вставь свой URL.
Через about:config для точной настройки
Введи в адресную строку:
about:config
Найди и измени параметры:
network.trr.mode = 3
(0 - выкл, 2 - DoH с fallback на обычный, 3 - только DoH, 5 - принудительно выкл)
network.trr.uri = https://cloudflare-dns.com/dns-query
Режим 3 — самый строгий. Если DoH недоступен — DNS не резолвится вообще. Для параноиков и тех, кто не хочет случайного fallback на открытый DNS.
Firefox и корпоративные сети
В корпоративной сети Firefox может получить политику через Group Policy или canary-домен use-application-dns.net. Если этот домен недоступен — Firefox отключает DoH. Это сделано специально, чтобы не ломать корпоративные DNS-фильтры. Дома это не мешает.
DNS over HTTPS в Opera
Opera — на движке Chromium, поэтому настройка похожа на Chrome. Есть нюанс: Opera может включить DoH автоматически при включённом VPN. Проверь оба места.
Открой:
opera://settings/privacy
Найди раздел «Безопасность». Включи «Использовать DNS over HTTPS вместо системных настроек DNS». Выбери провайдера или вставь URL вручную.
Если в Opera включён встроенный VPN — DNS уже идёт через серверы Opera. DoH при включённом VPN добавляет ещё один уровень, но фактически DNS резолвит VPN-сервер Opera. Реши сам, кому больше доверяешь.
DNS over HTTPS на Keenetic
Настройка на роутере — лучшее решение для домашней сети. Один раз настроил — все устройства: смартфоны, Smart TV, планшеты, IoT-мусор — получают зашифрованный DNS автоматически. Не надо лезть в настройки каждого устройства.
Keenetic поддерживает DoH начиная с версии прошивки 3.1.
Шаг 1. Обнови прошивку
Зайди в веб-интерфейс Keenetic. Система — Обновить прошивку. Если версия ниже 3.1 — обнови.
Шаг 2. Установи компонент «DNS-over-HTTPS прокси»
Система — Параметры компонентов. Найди «DNS-over-HTTPS прокси». Установи.
Шаг 3. Настрой DoH
Интернет — DNS. Переключи на «DNS-over-HTTPS». Вставь URL сервера.
Для Cloudflare:
https://cloudflare-dns.com/dns-query
Для Quad9:
https://dns.quad9.net/dns-query
Сохрани. Роутер перезапустит DNS-службу. Все новые DNS-запросы от устройств в сети пойдут через DoH.
%%{init: {
'theme': 'base',
'themeVariables': {
'primaryColor': '#ffffff',
'primaryTextColor': '#1e293b',
'primaryBorderColor': '#94a3b8',
'lineColor': '#64748b',
'fontSize': '15px',
'fontFamily': 'ui-sans-serif, system-ui, sans-serif'
},
'flowchart': {'curve': 'linear', 'nodeSpacing': 50, 'rankSpacing': 50}
}}%%
flowchart TD
A["Смартфон"] --> E["Keenetic роутер"]
B["ПК / ноутбук"] --> E
C["Smart TV"] --> E
D["IoT устройства"] --> E
E --> F["DoH прокси на роутере"]
F --> G["Cloudflare / Google / Quad9"]
style E fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
style F fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
style G fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
Keenetic через CLI (для тех кто не боится)
Если удобнее через командную строку — подключись по Telnet или через веб-терминал и выполни:
ip dns proxy name cloudflare doh url https://cloudflare-dns.com/dns-query
ip dns proxy name cloudflare doh enable
ip name-server dns-proxy
system configuration save
Проверь статус:
show ip dns proxy
Яндекс DNS over HTTPS
Яндекс предоставляет три варианта серверов с DoH:
| Тип |
DoH URL |
IP |
Особенности |
| Базовый |
https://common.dot.dns.yandex.net/dns-query |
77.88.8.8 / 77.88.8.1 |
Без фильтрации |
| Безопасный |
https://safe.dot.dns.yandex.net/dns-query |
77.88.8.88 / 77.88.8.2 |
Блокирует вирусы и мошенников |
| Семейный |
https://family.dot.dns.yandex.net/dns-query |
77.88.8.7 / 77.88.8.3 |
Блокирует взрослый контент |
Серверы Яндекса физически находятся в России. Это означает: данные хранятся под российской юрисдикцией. Если это важно — учти при выборе.
Как проверить DNS over HTTPS
Включил — проверь. Верить на слово настройкам не стоит.
Проверка через браузер
Открой:
https://1.1.1.1/help
Сервис Cloudflare покажет: «Using DNS over HTTPS (DoH) — Yes» или «No». Самая простая проверка.
Альтернативный вариант от Cloudflare:
https://www.cloudflare.com/ssl/encrypted-sni/
Проверит DNS over HTTPS, DNSSEC, TLS 1.3 и Encrypted SNI одним тестом.
Проверка через командную строку
Windows PowerShell:
Resolve-DnsName -Name cloudflare.com -Type A
Посмотри в разделе NameHost или Address — если разрешение прошло и в настройках выставлен DoH-сервер, запрос ушёл через него.
Через nslookup с явным указанием сервера:
nslookup cloudflare.com 1.1.1.1
Проверка через dig (Linux / WSL)
dig @1.1.1.1 cloudflare.com
Для явной проверки DoH через curl:
curl -H 'accept: application/dns-json' 'https://cloudflare-dns.com/dns-query?name=example.com&type=A'
Если вернулся JSON с полем «Answer» и IP-адресами — DoH работает.
Wireshark для параноиков
Запусти захват трафика. Фильтр:
udp.port == 53
Если DoH настроен правильно — трафика на порту 53 не будет. Все DNS-запросы растворятся в потоке HTTPS на 443-м порту и станут неотличимы от обычного браузерного трафика. Чем и хорош DoH.
Системные требования
| Платформа |
Минимальная версия |
Нативная поддержка DoH |
| Windows 11 |
Любая |
Да, в настройках сети |
| Windows 10 |
20H1+ (для Preview) |
Только через dnscrypt-proxy или браузер |
| Chrome |
83+ |
Да |
| Firefox |
62+ |
Да |
| Opera |
70+ |
Да |
| Edge |
85+ |
Да |
| Keenetic |
Прошивка 3.1+ |
Да, через компонент DoH прокси |
| Android |
9 (Pie) |
DNS over TLS нативно, DoH через браузер |
| iOS |
14+ |
Через профили конфигурации |
Порты и протоколы
| Протокол |
Порт |
Транспорт |
Шифрование |
| DNS (обычный) |
53 |
UDP / TCP |
Нет |
| DNS over TLS (DoT) |
853 |
TCP |
TLS |
| DNS over HTTPS (DoH) |
443 |
TCP |
HTTPS / TLS |
| DNS over QUIC (DoQ) |
853 |
QUIC |
TLS 1.3 |
Безопасность: что DoH не решает
DoH скрывает DNS-запросы. Но есть вещи, которые он не закрывает.
SNI (Server Name Indication) — расширение TLS, которое передаёт имя сайта в открытом виде при установке HTTPS-соединения. Провайдер всё ещё видит, к какому домену ты подключаешься, даже если DNS-запрос зашифрован. Частично решается через ECH (Encrypted Client Hello) — но это отдельная история.
IP-адрес назначения виден всегда. Если сайт живёт на выделенном IP — провайдер может вычислить домен по IP даже без DNS-лога.
DoH — это один слой защиты. Не серебряная пуля. Для полной приватности нужен ещё VPN или Tor.
Firewall при использовании DoH
Если у тебя настроен локальный DNS-сервер и ты хочешь принудительно гнать весь трафик через него — заблокируй исходящий UDP 53 для всех кроме своего DNS. DoH на 443-м порту заблокировать без DPI практически невозможно. Учти это в корпоративной среде.
Troubleshooting: что пошло не так
Ошибка: DNS не резолвится после включения DoH
Причина: Windows не распознала сервер как DoH-совместимый и не имеет fallback.
Решение: убедись что IP-адрес сервера есть в списке Windows Known DoH Servers. Проверь:
Get-DnsClientDohServerAddress | Select-Object ServerAddress, DohTemplate
Если нужного сервера нет — добавь вручную:
Add-DnsClientDohServerAddress -ServerAddress "94.140.14.14" -DohTemplate "https://dns.adguard.com/dns-query" -AllowFallbackToUdp $False -AutoUpgrade $True
Ошибка: в Chrome DoH включён, но 1.1.1.1/help показывает «No»
Причина: Chrome проверяет текущий системный DNS и пытается найти его DoH-аналог. Если системный DNS — сервер провайдера без DoH — Chrome молча не переключается.
Решение: принудительно выбери провайдера в настройках Chrome вместо «Системный». Укажи Cloudflare или Google явно.
Ошибка: Firefox игнорирует настройки DoH в корпоративной сети
Причина: обнаружен canary-домен use-application-dns.net, который недоступен — Firefox отключает DoH автоматически.
Решение: в about:config установи:
network.trr.mode = 3
Режим 3 игнорирует canary-домен и включает DoH принудительно.
Ошибка: Keenetic не сохраняет настройки DoH после перезагрузки
Причина: компонент «DNS-over-HTTPS прокси» не установлен или прошивка устарела.
Решение: проверь версию прошивки (минимум 3.1), убедись что компонент установлен через Система — Параметры компонентов, сохрани конфигурацию явно:
system configuration save
Ошибка: сайты открываются медленнее после включения DoH
Причина: DoH добавляет задержку на установку HTTPS-соединения с DoH-сервером. Особенно заметно если сервер далеко.
Решение: попробуй Cloudflare 1.1.1.1 — у него самые низкие задержки из публичных DoH-серверов. Или используй локальный кэширующий резолвер с DoH-апстримом.
Ошибка: DoH включён, но DNSSEC не проходит
Причина: не все DoH-серверы включают DNSSEC-валидацию по умолчанию.
Решение: Cloudflare и Quad9 делают DNSSEC-валидацию. Google тоже. Проверь на:
https://dnssec-analyzer.verisignlabs.com/
Альтернативные решения
NextDNS — DoH с фильтрацией и статистикой
NextDNS даёт персональный DoH-эндпоинт с кастомными списками блокировки, статистикой запросов и управлением через веб-интерфейс. Бесплатный план — 300 000 запросов в месяц. Хорошо подходит для семейной сети с детьми.
URL выглядит так:
https://dns.nextdns.io/ВАШИ_ID
Pi-hole + cloudflared
Если у тебя Raspberry Pi или старый мини-ПК — поставь Pi-hole для блокировки рекламы и cloudflared как DoH-клиент. Pi-hole принимает запросы по обычному DNS 53-му порту от устройств в сети, cloudflared пересылает их в Cloudflare через DoH. Провайдер не видит ничего, реклама режется на уровне DNS.
AdGuard Home
Аналог Pi-hole с нативной поддержкой DoH и DoT без дополнительных компонентов. Ставится как Docker-контейнер за 10 минут:
docker run --name adguardhome \
-v /opt/adguardhome/work:/opt/adguardhome/work \
-v /opt/adguardhome/conf:/opt/adguardhome/conf \
-p 53:53/tcp -p 53:53/udp \
-p 3000:3000/tcp \
adguard/adguardhome
После настройки выставляешь его IP как DNS на роутере — и все устройства получают DoH + блокировку рекламы.
Профилактика: как не сломать снова
DoH — тихая настройка. Включил и забыл. Но несколько вещей стоит держать в голове.
После обновления Windows — проверяй настройки DNS. Крупные обновления иногда сбрасывают параметры сети к дефолтным. Команда для быстрой проверки:
Get-DnsClientServerAddress | Select-Object -ExpandProperty ServerAddresses
Если видишь адреса провайдера вместо 1.1.1.1 или 8.8.8.8 — переназначь.
После смены провайдера или замены роутера — DNS может автоматически переключиться на сервер нового провайдера по DHCP. Зафиксируй DNS вручную, а не через автоматическое получение.
Один раз в год заходи на 1.1.1.1/help и проверяй. Три секунды. Зато точно знаешь что всё на месте.
FAQ
Почему после включения DoH некоторые сайты перестали открываться?
Скорее всего DoH-сервер блокирует домен. Quad9 и AdGuard блокируют вредоносные и фишинговые сайты. Если легитимный сайт попал в блок-лист — переключись на Cloudflare 1.1.1.1 или Google 8.8.8.8 — они не фильтруют контент. Временная проверка: отключи DoH, если сайт открылся — проблема в фильтрации.
Как проверить работает ли DNS over HTTPS прямо сейчас?
Открой https://1.1.1.1/help в браузере. Сервис Cloudflare покажет статус DoH напрямую. Второй вариант: https://www.cloudflare.com/ssl/encrypted-sni/ — покажет весь стек защиты включая DoH, DNSSEC и TLS.
Что если провайдер блокирует DoH серверы?
Теоретически провайдер может заблокировать IP-адреса Cloudflare или Google. На практике это означает блокировку огромного куска интернета, что нереально. Если всё же столкнулся — используй dnscrypt-proxy с несколькими серверами в конфиге: он автоматически переключается на доступный.
DoH и VPN — нужно ли включать оба?
При включённом VPN DNS-запросы обычно идут через VPN-сервер. DoH в браузере при этом работает поверх VPN-туннеля — двойное шифрование. Это не вредит, но и особого смысла нет: VPN уже скрывает DNS от провайдера. Исключение: если VPN-клиент имеет утечки DNS — DoH их не закроет, нужно исправлять DNS leak в настройках VPN.
Влияет ли DoH на скорость интернета?
Незначительно. DoH добавляет минимальную задержку на установку TLS-сессии с DoH-сервером при первом запросе. Последующие запросы используют keep-alive и идут быстро. Cloudflare 1.1.1.1 показывает медианную задержку DNS около 11 мс — быстрее большинства провайдерских серверов.
Нужно ли включать DoH в каждом браузере отдельно?
Если включил DoH на уровне Windows 11 или на роутере — браузеры, которые используют системный DNS, подхватят его автоматически. Но Firefox всегда использует собственные настройки DoH независимо от системы. Chrome при явно указанном провайдере в настройках тоже игнорирует системный DNS. Для полного покрытия — настрой и на уровне системы, и в Firefox отдельно.
Итог
Ты настроил DoH. Теперь DNS-запросы идут в зашифрованном HTTPS-туннеле. Провайдер видит трафик на 443-й порт — неотличимый от обычного браузинга. Никакого 53-го порта в открытом виде, никаких логов на стороне провайдера о том, какие домены ты резолвишь.
Это не магия и не полная анонимность — SNI и IP назначения всё ещё торчат наружу. Но DoH убирает самый простой способ слежки за твоим трафиком. За 5 минут настройки — нормальный результат.
Если что-то не заработало
Проверь на 1.1.1.1/help — там написано чёрным по белому. Если DoH показывает «No» после всех настроек — пиши в комментарии с указанием ОС и браузера, разберёмся.