您的智能电视可能忽略了PiHole

2020-12-05 21:01:03

如果您在网络上使用PiHole阻止广告并阻止各种智能设备向其制造商发送跟踪信息,您可能会惊讶地发现其中某些设备采用了偷偷摸摸的策略来完全绕开您的PiHole。

智能设备制造商经常在公共DNS服务器(例如Google的8.8.8.8)中“硬编码”,而他们的设备会忽略路由器分配的任何DNS服务器(例如PiHole)。

发现将近70%的智能电视和46%的游戏机包含硬编码的DNS设置-从而使他们完全可以完全忽略本地网络的DNS服务器。平均而言,智能电视每天平均产生60 MB的传出互联网流量,同时绕过PiHole等工具。

幸运的是,通过一些简单的防火墙规则,您可以拦截这些硬编码的DNS查询并将其重定向到您的PiHole。这些说明适用于pfSense,但是您应该可以将它们适应Sophos XG,Ubiquiti EdgeRouter等。

登录到pfSense管理界面,然后导航至Firewall> NAT>转发端口。

我们将创建两个端口转发NAT规则-一个将来自LAN上设备的所有DNS查询重定向到PiHole,另一个允许PiHole与外部DNS服务器通信。我们还将创建一个附加的出站NAT规则,使使用硬编码DNS的网络上的任何客户端都看不到该过程。

来源:LAN net(您可能需要单击蓝色的显示高级按钮才能看到此选项)

注意:pfSense(和大多数其他防火墙)从上到下处理规则。确保将第二条规则从我们的创建的第一条规则中拖动,使PiHole不受DNS查询重定向的影响-否则PiHole将无法联系外部DNS服务器。

最后,我们需要创建出站NAT规则。导航到防火墙> NAT>出站。

描述:防止将DNS重定向到PiHole后,硬编码的DNS客户端产生意外的源错误。

在您的网络上创建一个新的临时内部DNS条目(“ piholetest.example.com”),并将其指向10.0.1.1。您可以直接从PiHole的“本地DNS记录”下执行此操作。

如果正确设置,则nslookup应该返回10.0.1.1。您的计算机认为它正在接收来自1.1.1.1的DNS记录,而实际上它们来自您的PiHole。

您可以通过暂时禁用我们创建的第一个NAT规则并运行相同的nslookup piholetest.example.com命令来进一步证明这一点:

由于公共互联网上不存在“ piholetest.example.com”,因此真正的1.1.1.1服务器没有要提供的记录-导致您的nslookup请求返回了NXDOMAIN错误。

不要忘记将计算机的DNS设置恢复为原始值,并重新启用在测试过程中临时禁用的所有防火墙规则。