连接到Internet的大多数设备都依赖纯文本DNS查找。这些查找将域名(例如ghacks.net)“转换”为设备用来建立连接的IP地址。因此,任何在网络上侦听的人(包括ISP)都确切知道设备上打开了哪些站点和服务。
Mozilla,Google和Opera等浏览器制造商宣布支持HTTPS上的DNS,并已开始将该功能集成到浏览器中。该解决方案将允许这些浏览器的用户使用该功能,但仅适用于该浏览器。
微软计划在操作系统中引入对基于HTTPS的DNS的支持,这将支持该系统上的所有程序(包括浏览器)。
该公司决定根据所选提供商启用或禁用该功能。如果DNS提供程序支持基于HTTPS的DNS,则将使用它,否则将不使用。换句话说:一旦功能登陆Windows,许多用户将发现DNS查找的隐私和安全性得到了改善,甚至没有注意到这种情况的发生。
Microsoft已在Windows 10的最新Insider版本中集成了HTTPs上的DNS。请注意,该功能尚未在Windows 10的稳定版本中实现。目前尚不清楚何时会出现这种情况,因为Microsoft没有为此提供时间表。
注意:内部版本号必须至少为19628。您可以通过从“开始”菜单加载winver来检查内部版本号。
如何在Windows 10上通过HTTPS启用DNS
Windows 10 DNS通过https
仅内部人员版本要求在注册表中启用DNS over HTTPS。微软指出,一旦该功能在Windows 10的稳定版本中发布,就不需要这样做了。
点击开始。
键入regedit.exe并按Enter键以加载注册表编辑器。
确认是否显示UAC提示。
转到HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Dnscache \ Parameters。
右键单击“参数”,然后选择“新建”>“ Dword(32位)值”。
将其命名为EnableAutoDOH。
将其值设置为2。
重新启动Windows系统。
您需要确保选择了支持基于HTTPS的DNS的提供程序。Microsoft在其技术社区网站上重点介绍了三个提供商:
这些服务器需要设置为系统上的DNS服务器地址,因为它们是自动升级的服务器。
管理员可以将其他具有HTTPS功能的DNS服务器添加到系统中,以便也可以使用它们。
需要以提升的特权运行以下命令,以通过支持HTTPS的服务器向系统添加DNS:
netsh dns添加加密服务器= <服务器的IP地址> dohtemplate = <服务器的DoH-URI-template>
要验证模板,请运行以下命令:
netsh dns显示加密服务器= <服务器的IP地址>
这是更改DNS设置的方法:
选择开始>设置>网络和Internet>更改适配器设置。
右键单击使用的适配器,然后选择“属性”。
双击Internet协议版本4或6(或两者都一个接一个)以设置新的DNS提供程序。
选择“使用以下DNS服务器地址”。
输入上面列出的地址。
单击确定以应用更改。
请注意,您可以随时通过切换到“自动”选项或编辑DNS服务器来还原更改。
如何在Windows 10上通过HTTPS测试DNS
Windows 10带有内置功能,可以测试基于HTTPS的DNS是否正常工作。
打开一个PowerShell窗口。
一个接一个地运行以下命令:
pktmon filter remove //删除所有现有的过滤器。
pktmon filter add -p 53 //为传统DNS使用的端口53添加流量过滤器。
pktmon start --etw -m real-time //开始实时记录流量。
如果使用基于HTTPS的DNS,则显示“几乎没有流量”。