轻量级 Linux DNS

轻量级 Linux DNS

有人能推荐一个适合数据中心的轻量级 Linux DNS 服务器吗?

编辑:我们通常谈论的数据中心在 10 - 20 台服务器内,最多 100 台。对于更大的数量,使用 BIND 确实有意义。

我正在寻找比 BIND 更轻量级的东西(如果存在类似的东西的话)。

如果它包含在 CentOS 5.4 的通用 YUM 存储库中,那就更好了。

答案1

您需要哪种 DNS?您是否需要数据中心客户端的递归解析器?您是否需要托管某些域的权威服务器?您是否想从自己的服务器中删除依赖项(外部递归 DNS 查找)?

简短的回答(这有点儿像宗教问题,因此请谨慎对待):

  • 在每个服务器的本地主机上运行递归解析器,每个服务器都使用自身进行递归 DNS。PowerDNS 制作了一个适用于 Windows 和 Unix 的解析器;DJB 的 dnscache(tinydns 包的一部分)也是 100% 可靠的,但您可能需要对其进行调整,以便它能够跟踪非常长的 cname 链(akamai,我正在关注您)。

  • 为您自己的地址运行单独的 DNS 服务器。同样,PowerDNS 是一个不错的选择,Wikipedia 使用了它。它有各种各样的后端,从绑定区域文件到 postgresql 数据库。Tinydns 也很棒,不过如果您来自绑定领域,它会有点奇怪。在您的“非本地主机”接口上运行这些 DNS 服务器,并使用您的注册商发布这些地址。成为您自己的域名的主人!

  • 如果您正在向数据中心内的其他主机提供递归服务,请在不提供 DNS 服务的机器上运行 dnscache 或 pdns-recursor,并将解析器的 ACL 设置为仅服务来自数据中心内部的请求。互联网上的随机主机可能会对 DNS 服务器进行古怪的缓存中毒攻击,因此如果您有选择,则不应信任它们。

PowerDNS 可能是最容易从包中安装的;在遥远的过去,DJB 特别担心第三方会弄乱他的宝贝,所以他对二进制分发版有奇怪的许可限制;这些限制现在已经被删除,但对 DJB DNS 实用程序套件的不满仍然存在。

答案2

域名系统可能是一个不错的选择。它可以同时执行 dns 和 dhcp。只需使用主机文件并具有简单的配置。它应该位于您的发行版的默认存储库中。

编辑:让我澄清一下我的答案,因为它得到了一些反对票和评论。这个问题没有明确说明整个用例和规模。因此,虽然您可能不同意 dnsmasq 在正确的情况下是一个完全有效的解决方案。由于他们的问题有点缺乏细节,原作者必须弄清楚什么适合他们的具体情况。

我只推荐将其作为可行的解决方案,如果它是用于数据中心专用 LAN 段的内部 DNS 解析。假设我们谈论的不是 100 台服务器。如果您希望运行自己的公共 DNS,那么您最好准备在至少 2 个地理分散的数据中心运行成熟的 DNS 解决方案。

答案3

查看 DJB 的 DNS(djbdns 和 tinydns)http://cr.yp.to/djbdns.html? 甚至可以使用 BIND 的区域文件。

答案4

在我看来,DNS 服务的“重量”不是软件本身,而是它处理的流量以及它为解析地址而必须完成的工作。您可以在数据中心部署多个 DNS,以最大限度地减少负载并减少可能的单点故障。但请记住,性能低下的 DNS 可能会降低其他服务的性能。

相关内容