在本地networking中添加用于名称parsing的自定义DNS条目

嗨!

我们的办公室服务器基于主机名服务于不同的网站,例如wiki.os,icons.os,许多客户项目的条目等等。我们通过办公室中每台电脑的hosts文件执行名称parsing。 这是一个真正的痛苦,因为名单不时变化。

我想使用办公室服务器作为办公室的电脑的名称服务器,让它返回通常的名称服务器结果加上我们的自定义本地DNS服务器的条目,所以每个连接在networking上的电脑可以使用的名称。 目前,使用的名称服务器是路由器。 服务器在Debian上运行。

什么是最好的方法来做到这一点? 我是否必须build立一个完整的BIND服务器,或者是否有一个我错过了的偷偷摸摸的工具? 有什么build议么?

问候,Steffen

我已经使用dnsmasq在我的家庭networking中提供本地dns服务,并且也知道能够服务超过1000台主机。 Dnsmasq将提供/ etc / hosts文件中的名称,提供dnscaching,并且还包含一个dhcp服务器。 dhcp部分默认是禁用的。

在Debian上安装程序如下所示:

apt-get install dnsmasq

如果Dnsmasq是自己的caching,或者本地主机文件缺less合适的条目,则Dnsmasq会默认询问resolv.conf中的名称服务器。

我也在工作中使用dnsmasq来提供DNScaching,效果非常明显。

在Debian上设置BIND确实不是什么大问题。 请参阅: http : //www.langfeldt.net/DNS-HOWTO/BIND-9/DNS-HOWTO.html ,以获取许多与BIND相关的HOWTO文档。 这个特定的HOWTO以一种非常循序渐进的方式进行,并且很容易遵循。

无论你做什么,你都做出了正确的决定,停止使用HOSTS文件。 (我只是想着使用HOSTS文件,几乎从我眼中stream血…)

您可能需要查看tinydns和dnscache,它们certificate了您需要的确切function,并且既安全又便于维护,而且是以构build在一个完全相同的工具为代价的,我们称之为“独特”的方式。

在这里抓一个教程。

我非常同意DGnome。 使用dnsmasq是你的环境的最佳解决scheme,不仅因为你已经有一个完整的hosts文件。

但是,如果您的networking上运行了另一个DHCP服务器,请确保不要激活 dnsmasq 的DHCP服务器部分。

要做到这一点,请确保在dnsmasq.conf中没有活动的(没有前导“#”) dhcp-range=行和/或使用no-dhcp-interface=选项。