我的DNS注册商和DNS提供商最近发生了长时间的中断,导致我的所有域名无法使用(电子邮件,自己的+客户端网站等)。
他们有3个DNS服务器,他们都在同一个共同主办设施!
我对networking的了解足以让我的超自然超级单身,但还不足以谴责这一点。 这不是一个残酷的devise吗?
它们是不是应该跨越线路传播,甚至是大陆?
(来源: https : //help.hover.com/hc/en-us/community/posts/115007805527-After-recent-outage-what-are-you-going-to-do-to-fix-your-network -design-problems- )
不要把重量放在地理IP注册,只是因为像hover(可能是一个坏例子)或cloudflare(完美的例子)的服务有一个小的IP地址列表并不表示规模。
例如,8.8.8.8在bgp中通过任播广播到多个存在点(PoP),而对于你来说,这是一个单一的IP因此是一个单一的故障点,并不能说明整个故事。
使用lg.he.nethover专门研究这些IP不会这样做。
要回答,是的,他们应该,不,他们没有,但列出3个名称服务器不一定是问题。
而且,Google有4个名称服务器,每个名称服务器都有一个/ 24个任意播放,以/ 23单播方式封装,用于networking故障恢复。
以下是Google的第一个名称服务器ns1.google.com的示例
现在让我们看看ns1.hover.com
哎呀,不是很好,胡佛可能有(2)路由到一个networking,而谷歌可能有多条路线多个PoP与相同的广告IP。
我build议看看cloudflare,NS1或许多其他的…多供应商和/或运行自己的奴隶,如果该区域对你来说真的很重要。
没有深入讨论这个特定操作员的设置(我不熟悉这个),对一般问题的回答是很清楚的。
DNS具有冗长的devise历史(协议内置了用于在服务器之间同步区域数据的工具,多个权威的域名服务器通过简单地添加多个NSlogging本地支持,大多数注册pipe理机构在委托时至less需要两个域名服务器注册域名等)等。
在地理位置以及networking拓扑结构方面,您的权威域名服务器之间具有多样性也是一个长久以来的最佳实践。
其中一个例子是RFC2181 – 次要DNS服务器的select和操作 (自从获得最佳实践状态以来又称为BCP16),这是1997年以来关于这个主题的一份文件。
本文档中有关select辅助服务器的部分(即完整的权威名称服务器应该是什么样子)如下所示:
3.1。 select辅助服务器
在select二级服务器时,应注意各种可能的故障模式。 应该放置服务器,以便至less有一台服务器可用于互联网的所有重要部分,以防发生任何可能的故障。
因此,将所有的服务器放在本地,而易于安排,易于pipe理,这不是一个好的策略。 如果一个链接失败,或者有一个网站,或者甚至是build筑物,或者空间,电力故障,这样的configuration可能导致所有的服务器与互联网断开。
辅助服务器必须放置在互联网上的拓扑和地理位置分散的位置,以最大限度地减less所有这些服务器发生单一故障的可能性。
也就是说,二级服务器应该位于地理位置较远的地方,因此,像电力损失等事件不太可能同时中断所有这些事件。 他们也应该通过相当多样的path连接到networking。 这意味着任何一个链路或networking某个部分(如服务提供者)内的路由失败都不会使所有的服务器都无法访问。
以上是一般DNS部署的最佳实践。
很显然,人们会根据情况来调整预期,但是当涉及一家公司运营的大规模部署时,将这些服务作为其核心业务的一部分,上述情况确实是有道理的。