你可能知道也可能不知道,当你的路由器解析一个DNS地址时,它实际上是在把DNS请求发送给外部DNS解析器,而这个通常默认是你的ISP。这个请求是明文发布的,意味着它没有加密,这意味着别人很容易看到你访问的网站。虽然不能保证你的ISP会记录你去过的每个地方,但很有可能。
但你猜怎么着?
事情不必如此。
VPN是隐藏DNS查询的一种方式,但你也可以利用不同的DNS解析方式来加密请求,同时将查询数据从ISP那里转移开。更棒的是,设置起来其实非常简单。
如需深入了解安全发送DNS请求的两种主要方法,请点击此处访问Cloudflare的文章:
就我们的目的而言,我们将设置DNS-over-HTTPS(DoH)。为什么?由于DNS请求会和443端口的其他数据流混杂在一起,所以更难区分。这是件好事!
如遇任何问题或需要进一步帮助,请参考OpenWRT 论坛或OpenVPN 文档。
1. DNS 劫持
这几乎是从OpenWRT关于此主题的文档中直接摘录的。
这一步我们要做的是确保所有发出的DNS请求都被路由器捕获,这样它们可以通过另一个包加密,并通过DoH发送到我们选择的解析器(不是你的ISP)。
首先,从你的Linksys OpenWRT路由器主菜单中进入 Network->Firewall。

到达后,点击“Port Forwards”标签。然后点击“Add”来创建新的端口转发规则。

最后,把设置改成和截图一样,点“Save”,然后“Save & Apply”。
这个就说到这里。

2. HTTPS-DNS-PROXY
注意:这些说明假设你没有把默认的dnsmasq(dnsmas守护进程)替换成Unbound或类似程序。
首先,我们需要去System->Software 找到并添加正确的软件包。
一旦你进入该页面,请筛选出“Luci-app-http-dns-proxy”。虽然我的截图显示为“已安装”,因为我已经添加了它,但你应该会看到一个“安装”按钮。点击它即可。
*有关软件安装的基本步骤,请点击这里。


完成后,访问Services->DNS HTTPS Proxy。

你应该看看这个。请注意,你可以从解决器列表中选择,也可以添加自己的解决器。

建议:使用包中提供的链接了解更多关于不同解析器的知识。Quad9通常被评为最私密和安全的设备之一。
注意强制路由器DNS的选项。这是一个很好的选择,因为它防止其他用户在浏览器中设置自定义DNS以绕过你可能设置的屏蔽(例如广告屏蔽)。
3. 确保它正常工作
既然我们费了心思设置这个,应该确认它是否正常工作。最简单的方法是去DNS泄露测试。点击“标准测试”并等待。结果应该显示你列表中某个解析器的服务器。

既然谷歌还在我的列表里,我知道它有效。
仅此而已。你的DNS请求现在和其他SSL流量一起加密,更难被监视。太棒了!

