SyR*_*ity 5 domain-name-system datacenter centos5
谁能推荐一款适合数据中心的轻量级Linux DNS服务器?
编辑:我们通常在 10 - 20 台服务器内谈论数据中心,最多 100 台。对于更大的数量,确实可以使用 BIND。
我正在寻找更轻量级的 BIND(如果存在这样的东西)。
如果它包含在 CentOS 5.4 的通用 YUM 存储库中,那就更好了。
dnsmasq可能是一个不错的选择。它既可以做 dns 也可以做 dhcp。只使用主机文件,配置简单。它应该在您的发行版的默认存储库中。
编辑:让我澄清我的答案,因为它得到了一些反对票和评论。关于整个用例和规模的问题尚不清楚。因此,虽然您可能不同意 dnsmasq 在正确的情况下是一个完全有效的解决方案。OP 将不得不弄清楚什么适合他们的特定情况,因为他们的问题有点缺乏细节。
如果它用于数据中心专用 LAN 段上的内部 dns 解析,我只会推荐它作为一个可行的解决方案。假设我们不是在谈论 100 台服务器。如果您希望运行自己的公共 DNS,那么您最好准备好在至少 2 个不同地理区域的数据中心运行成熟的 DNS 解决方案。
从http://cr.yp.to/djbdns.html查看 DJB 的 DNS(djbdns 和 tinydns)?甚至可以使用 BIND 的区域文件。
你需要什么样的DNS?您是否需要数据中心客户端的递归解析器?您托管的某些域的权威服务器?您想从您自己的服务器中删除依赖项(外部递归 DNS 查找)吗?
简短的回答(这是一个宗教问题,所以请带上一块盐):
在每台服务器的本地主机上运行递归解析器,每台服务器都将自己用于递归 DNS。PowerDNS 制作了一个适用于 windows 和 unix 的解析器;DJB 的 dnscache 是 tinydns 包的一部分,也是 100% 防弹,但您可能需要对其进行调整,以便它可以遵循非常长的 cname 链(akamai,我在看着您)。
为您拥有的地址运行单独的 DNS 服务器。同样,PowerDNS 是一种选择,由维基百科使用。它有各种不错的后端,从绑定区域文件到 postgresql 数据库。Tinydns 也很棒,但如果您来自绑定地,则有点奇怪。在您的“非本地主机”接口上运行这些 DNS 服务器,并向您的注册商发布这些地址。成为您自己领域的主人!
如果您要向数据中心内的其他主机提供递归服务,请在不提供 DNS 服务的机器上运行 dnscache 或 pdns-recursor,并将解析器的 ACL 设置为仅服务来自数据中心内部的请求。互联网上的随机主机可以对 DNS 服务器进行古怪的缓存中毒攻击,因此如果您有选择,它们不应该被信任。
PowerDNS 可能最容易从软件包安装;在遥远的过去,DJB 对第三方搞砸了他的孩子特别偏执,所以他对二进制发行版有奇怪的许可证限制;这些已被删除,但对 DJB 套件的 DNS 实用程序的不良情绪仍然存在。