我在一个大型组织中工作(数千台服务器,数百个物理位置,在不远的将来会有几十个数据中心进行整合),正在考虑重新审视networking基础架构和服务器托pipe环境的许多方面。
我被要求提供input的一个领域是DNS实现。 我拥有的最大的牛肉是我们不支持水平分割或分割视图DNS。 面向Internet的设备被命名为host.example.com,而Intranet设备和pipe理界面被标记为host.example.customtld。 这给实施面向互联网和内联网的服务的人们带来了很大的悲痛。
SF社区有什么可以提供更多DNS的build议吗? 任何恐怖故事要避免? 创新的想法,节省了大量的工作?
你有没有考虑过任播DNS? 除其他外, 这个问题提供了更多的信息。 Anycast允许您从networking中的多个位置通告相同的IP前缀,并将客户端系统路由到(最靠近)服务的实例。
一些好处:
实施分割视图的DNS将会节省很多的痛苦(对于实施面向互联网和内联网的服务的人),从而为你工作。 使用BIND,设置起来很简单。
当然,如果你不运行BIND,那么它可能会更多的工作。
而如果说“你不能使用分裂观点”的权力,那么你就搞砸了。
您可能知道,对于每个域(或局域网或组织单位,或其他)至less有两台DNS服务器是很好的做法(有时也是必需的)。 人们普遍认为这两台服务器之一必须是“主”,其他服务器必须是“奴隶”。 如果您有多个局域网(或子域),并且每个局域网都有自己的一对DNS服务器,那么您将会尝试pipe理分散在您组织中的所有主服务器。
所以下面是提示:这两个DNS服务器中的一个必须是主服务器。 真正的要求是两者都应该是权威的 。 那不一样。
两个权威的服务器都是奴隶没有任何问题。 事实上,我经常这样做,即使是小的领域。 拥有权威的奴隶服务器让我可以做一些有趣的事情。
比方说,我有两个现有的DNS服务器(A和B),并希望将A的数据迁移到新的服务器C并摆脱A.下面是步骤:
另一个诀窍是只使用你的奴隶作为权威的服务器。 主服务器不被客户端使用,并且仅存在用于保存主区域文件。 从服务器从主服务器获取区域文件,这些文件可能藏在防火墙后面,以防止被篡改。 你可以有一个单一的主人,所有的奴隶(整个你的整个组织)从中吸引,消除了pipe理多个主人的pipe理开销。