从 2021 年的版本开始,Windows 11 在系统设置里直接支持加密 DNS——不需要第三方软件,图形界面即可开启 DNS over HTTPS。
Windows 11 从系统层面支持 DNS over HTTPS(DoH,RFC 8484)。打开「设置 → 网络和 Internet → 选择以太网或 Wi-Fi → DNS 服务器分配 → 编辑 → 手动」,填入首选/备用 DNS 服务器地址,再把「DNS over HTTPS」加密方式设为「仅 DoH」即可。图形界面只对系统内置清单中的知名公共 DNS 开放加密选项;自建或小众服务器需要先用管理员身份执行 netsh dnsclient add encryption server=地址 dohtemplate=模板URL 注册,之后设置里才会出现加密下拉框。
每一步都对着点即可,全程无需命令行
Win + i 打开「设置」,左侧选「网络和 Internet」。1.1.1.1),「备用 DNS」填第二个(如 1.0.0.1)。https://cloudflare-dns.com/dns-query。如果你填完 IP 却看不到加密下拉框,说明这个 IP 不在 Windows 内置的已知 DoH 服务器清单里——跳到下一节用 netsh 注册模板即可解锁。
以管理员身份打开命令提示符或 PowerShell(开始菜单搜 cmd → 右键「以管理员身份运行」),执行:
server=:你的 DNS 服务器 IP(与图形界面里填的 IP 一致)。dohtemplate=:RFC 8484 形式的 DoH 模板 URL。autoupgrade=yes:该服务器的查询自动升级为 DoH。udpfallback=no:禁止回退明文 UDP 53,保证严格加密。注册完成后回到图形界面,对同一 IP 就能选择「仅 DoH」了。查看已注册的加密服务器清单:
这些 IP 在图形界面里直接可选加密方式
| 服务商 | 首选 DNS | 备用 DNS | DoH 模板 |
|---|---|---|---|
| Cloudflare | 1.1.1.1 | 1.0.0.1 | https://cloudflare-dns.com/dns-query |
8.8.8.8 | 8.8.4.4 | https://dns.google/dns-query | |
| Quad9 | 9.9.9.9 | 149.112.112.112 | https://dns.quad9.net/dns-query |
| 234 自建 | 自建节点 IP(netsh 注册) | https://dns.23-4.cn/dns-query | |
不要凭感觉,用命令和日志说话
输出表格中找到你配置的服务器,查看其 DohTemplate 是否为你的端点、AutoUpgrade 与 Fallback 状态是否符合预期。
确认目标网卡上的 DNS 服务器地址已改为你指定的地址,而不是路由器自动下发的那个。
打开事件查看器,依次进入「应用程序和服务日志 → Microsoft → Windows → Dns-Client」,其中会记录加密 DNS 会话的建立与使用情况。这也是微软在零信任 DNS 文档中推荐的审计途径之一。
第一,家庭宽带光猫如果工作在路由模式、DHCP 自动下发 DNS,Windows 里手动改完 DNS 后,网卡重连或重启电脑可能又被自动覆盖回光猫地址,需要在路由器侧把 DHCP 下发的 DNS 一并改掉,或锁定网卡 DNS。第二,企业域环境通常由组策略统一下发 DoH 策略,手动改设置可能被管理员策略覆盖,属正常现象。第三,选了「仅 DoH」之后如果上游节点不稳定,会出现网页间歇性打不开——先切回「自动」模式观察一段时间,确认节点稳定后再收紧为仅 DoH。第四,改完 DNS 后如果仍解析旧结果,那是本机 DNS 缓存未过期,在命令行执行 ipconfig /flushdns 刷新即可。
netsh dnsclient add encryption server=IP dohtemplate=https://... 注册模板,之后设置里才会出现加密选项。netsh dnsclient show servers 查看接口 DNS;PowerShell 执行 Get-DnsClientDohServerAddress 查看服务器对应的 DoH 模板与自动升级状态;也可在事件查看器的 Dns-Client 日志中观察加密查询记录。