我在我的网络上使用 dnsmasq 作为白名单。我的 dnsmasq.conf 文件如下所示:
bogus-priv
domain-needed
no-resolv
server=/stackexchange.com/8.8.8.8
#etc...
Run Code Online (Sandbox Code Playgroud)
我希望能够阻止子域,例如:
server=/meta.stackexchange.com/0.0.0.0
Run Code Online (Sandbox Code Playgroud)
我也试过:
address=/meta.stackexchange.com/0.0.0.0
Run Code Online (Sandbox Code Playgroud)
对于两者,我都尝试将 127.0.0.1 替换为 0.0.0.0。
不幸的是,这似乎不起作用。如何在允许配置文件中的域的其余部分的同时阻止特定的子域?
请不要劫持 DNS。这干扰了互联网的低层架构。几乎所有 DNS 劫持的道德应用都可以通过防火墙设备或程序得到更好的服务。
如果您想阻止将区域解析为地址,您可以轻松编辑客户端主机文件。
虽然dnsmasq
能够提供您所描述的“欺骗”DNS 结果类型,但 dnsmasq 服务器很容易被访问客户端主机的最终用户或恶意攻击者绕过。因此,这种类型的 DNS 劫持几乎无法为安全带来任何好处。
同样,如果目标是阻止客户端无意中访问恶意或不受信任的远程主机,则正确配置的防火墙设备可能会为您提供更好的服务。一个流行的解决方案是 Rasperry Pi 上的 OpenWRT,如本文所述。
有了dnsmasq
这个工程实际上是:
address=/meta.stackexchange.com/127.0.0.1
Run Code Online (Sandbox Code Playgroud)
dnsmasq
修改后重启了吗?
有关设置 dnsmasq 的详细信息,请参阅此一。
注意:正如其他人指出的那样,您可以使用 /etc/hosts
127.0.0.1 meta.stackexchange.com
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16326 次 |
最近记录: |