本地 DNS 缓存?

本地 DNS 缓存?

我有一台闲置的 PC,它有些功能。我想拥有自己的 DNS 服务器,就像 ISP 那样。我该怎么做?我懂 Linux,所以没什么大不了的。我觉得这会很有趣 :D

答案1

这有点令人困惑,因为您描述的设置与主题中提到的设置不同。

第一个本地 DNS 缓存

这很容易实现dnsmasq

要进行设置,请安装dnsmasq您发行版的软件包。由于基于 Debian 的系统现在很常见,因此我假设使用此发行版。

$ apt-get install dnsmasq

现在编辑/etc/dnsmasq.conf并将listen-address指令设置为连接到您的网络的网络接口的 IP 地址。

现在重新启动 dnsmasq 服务

$ /etc/init.d/dnsmasq restart

编辑您的resolv.conf并输入您的提供商或其他提供商提供的名称服务器:

# Google DNS 1 
nameserver 8.8.8.8
# Google DNS 2
nameserver 8.8.4.4

现在您可以将 Linux 机器设置为 LAN 客户端的 DNS 服务器并使用 DNS 缓存。

要测试它是否有效,你可以使用dig

$ dig example.com

你会看到类似

;; Query time: 38 msec

现在再次输入命令,你应该看到类似的内容:

;; Query time: 2 msec

ISP 就像真正的 DNS 服务器

这可以通过使用 bind 等真实名称服务器软件来实现。但如果您对此没有经验,您可能应该先阅读bind9.net因为这个问题太过广泛,难以回答。

答案2

我强烈推荐的缓存递归 DNS 服务器只有两个(适用于 Windows 和 UNIX 版本)

  1. 绑定(http://www.isc.org/
  2. 不绑定(http://www.unbound.net/

我推荐这两个工具的特别原因是 DNSSEC - 它们都内置了完整的 DNSSEC 验证。使用dnsmasq或 则无法获得该功能tinydns

BIND 通常被认为是DNS 的参考实现,尽管我要指出,因为它是一个完整的通用 DNS 服务器,所以它具有许多仅递归服务器不需要的旋钮和设置。

Unbound 从一开始就被设计为仅递归。它快速且轻量。

答案3

Bind 是最受欢迎的: http://www.isc.org/software/bind

如果您想要适用于 Windows 的某些东西,Windows Server 已经内置了 DNS 服务器。

不确定你为什么想要本地 DNS 服务器,它不一定能加快 DNS 查找速度。请记住,DNS 服务器在解析 IP 之前必须运行多个查询。在 DSL 甚至电缆上,它们会比具有大管道的数据中心的 DNS 服务器慢……

答案4

TinyDNS/DNScache 很酷而且很快

它的配置和维护非常简单。

但远远不能满足您的需求。

我建议使用 dnsmasq.. 它可以完成您要找的工作..

希望这能有所帮助:D

相关内容