本文最后更新于 2023-08-12,文章内容可能已经过时。

windows11添加国内的DoH地址

什么是DoH与DoT

DoT全称是DNS over TLS,它使用TLS协议来传输DNS协议。TLS协议是目前互联网最常用的安全加密协议之一,我们访问HTTPS的安全基础就是基于TLS协议的。相比于之前使用无连接无加密的UDP模式, TLS本身已经实现了保密性与完整性。 DoH全称是DNS over HTTPS,它使用HTTPS来传输DNS协议。DoH的安全原理与DoT一样,他们之间的区别只在于:DoH有了HTTPS格式封装,更加通用。 DoT在专用端口上通过TLS连接DNS服务器,而DoH是基于使用HTTPS应用层协议,将查询发送到HTTPS端口上的特定HTTP端点,这里造成的外界感知就是端口号的不同,DoT的端口号是853,DoH端口号443。

国内支持DoH的Public DNS 地址

screenshot-20220316-014924.png

DNSPod

DoH:https://doh.pub/dns-query

DoH(IP):https://1.12.12.12/dns-query;https://120.53.53.53/dns-query

DoH(国密):https://sm2.doh.pub/dns-query

DoT:dot.pub

DoT(IP):1.12.12.12;120.53.53.53

阿里DNS

DoH:223.5.5.5;223.6.6.6
DoH:https://dns.alidns.com/dns-query

编辑本地网络信息

微软默认仅支持国外的DoH地址,国内的暂不支持,填写IP地址后显示为灰色不可用,如下图所示,由于我未添加223.5.5.5,所以他就是显示灰色的 screenshot-20220316-015401.png

使用命令行或修改注册表,让windows11 支持国内的DNS地址

使用管理员模式打开命令行,输入

netsh dns add encryption server=223.5.5.5 dohtemplate=https://dns.alidns.com/dns-query
netsh dns add encryption server=223.6.6.6 dohtemplate=https://dns.alidns.com/dns-query

screenshot-20220316-022354.png

键盘快捷键按下“win+r”,弹出运行输入”regedit”回车,打开注册表管理器找到以下路径

\HKEY_LOCAL_MACHINE
\SYSTEM
\CurrentControlSet
\Services
\Dnscache
\Parameters
\DohWellKnownServers

1.看到有很多国外的加密doh地址写在里面,鼠标选中DohWellKnownServers,鼠标右键——–新建——–项———填写比如1.12.12.12 screenshot-20220316-015816.png 2. 鼠标选中1.12.12.12,鼠标右键——–新建——–字符串值——–填写Template,然后鼠标右键Template——–修改———数值数据填写https://1.12.12.12/dns-query screenshot-20220316-020130.png

重启电脑

编辑本地网络信息

此时,填写国内的DoH地址1.12.12.12223.5.5.5就发现有选项了,选择仅加密(通过HTTPS的DNS) screenshot-20220316-023305.png 点击保存即可。

参考链接

https://www.elevenforum.com/t/enable-dns-over-https-doh-in-windows-11.280/

https://kbsml.com/?p=557