对某些特定域使用不同的 DNS 服务器

对某些特定域使用不同的 DNS 服务器

我想对默认 DNS 服务器阻止的某些特定域使用不同的 DNS 服务器。出于某些原因,我不想更改我的默认 DNS 服务器。

有没有办法在不安装我自己的 DNS 服务器的情况下做到这一点?

我刚刚得知这在 Mac 上是可能的:http://hints.macworld.com/article.php?story=2004062902195410

答案1

看一眼

我知道这个答案有点晚了但我刚刚尝试过并且它有效。

总结一下,

  1. 创建/编辑/etc/NetworkManager/dnsmasq.d/custom-dns
  2. 添加以下几行,这样domain.intra将被 解析192.168.30.1home.intra将被 解析192.168.0.1。我们可以根据需要添加任意多行。 server=/domain.intra/192.168.30.1 server=/home.intra/192.168.0.1
  3. 通过 重新启动网络管理器sudo service network-manager restart

就是这样。

希望这可以帮助。

答案2

GNU libc 中似乎没有 DNS 路由支持,因此您引用的 Mac 文章中使用的相同技巧在 Linux 上不起作用。

双 DHCP/DNS 服务器是根据文档支持 DNS 路由的 DNS 服务器(您可以关闭 DHCP 功能)。

答案3

如果相应的 IP 相对静态,您还可以将域添加到 /etc/hosts 文件中。

答案4

我使用 BIND9 完成了此操作,因此我可以从 Google IPv6 白名单服务器获取结果,同时仍向 OpenNic 服务器询问其域。如果您仍然感兴趣,请告诉我,我会回过头来弄清楚它是如何做到的,然后编辑此答案。

编辑:现在我注意到您不想安装自己的 DNS 服务器!如果您担心安全问题,您可以设置防火墙,这样只有运行 DNS 服务器的计算机才能使用它,外部看不到您正在运行 DNS 服务器。

相关内容