DNS 服务器的地理位置有多重要?

DNS 服务器的地理位置有多重要?

我们已经开始在亚洲运行自己的 DNS 服务器,因为我们的主要受众在亚洲。但是,似乎有些美国用户有时在访问我们的网站时会遇到困难。我自己注意到,从美国对我们的域名进行 DNS 查询相对较慢(500 毫秒以上)。也许有些用户遇到的问题是由于其他 DNS 配置错误造成的,但总的来说,DNS 服务器的地理位置有多大的问题?我们是否应该在美国再设一台服务器?

答案1

从美国对我们的域名进行 DNS 查找相对较慢 (500 毫秒以上)。

这不是亚洲——这是一个糟糕的提供商。

我自己在欧洲。我到美国机器的延迟是 150ms,从德国数据中心到我在芝加哥的机器的延迟是 125ms。

现在,我不明白亚洲的 aar 怎么会是德国的 5 倍以上。即使你通过欧洲路由亚洲流量(这从一开始就很愚蠢),这仍然太多了。

归根结底,问题不在于地理位置,而在于提供商连接不良。

也就是说:在美国添加服务器不会有帮助,因为 DNS 服务器是循环选择的 - 只有当您建立一个区域感知 IP 多播解决方案时才会有帮助。

我建议将 DNS 转移到一些专业公司。更便宜,而且他们会帮你解决问题。

但半秒就太多了。太多了。

答案2

可能相关的一点是区域的 TTL。如果您的 TTL 较高,则区域将在缓存中停留更长时间,您的客户更有可能获取这些缓存。

当然,高 TTL 也有缺点,最突出的是变化需要更长的时间才能传播。我建议阅读克里斯·戈尼亚有关 DNS/TTL 的文章齐特拉克斯更多细节。

答案3

根据您的场景,DNS 服务器的位置或多或少是一个问题。

以下是一些见解:

  • DNS 延迟对于 Web 应用程序来说并不重要,因为现在大多数浏览器都会执行 DNS 预取
  • 几个分散的 DNS 服务器比使用中心内多个共置的 DNS 服务器更好
  • 大多数 DNS 解析器根据之前测量的响应时间来选择要查询的服务器
  • DNS 的平均延迟预计为 200ms
  • 根据我们的经验,亚洲供应商之间的路由质量差异很大。
  • 对于从名称服务器 B 解析 A,预计 t = X/50 [毫秒],其中 X 是公里的近似距离

话虽如此,从美国到亚洲(具体在哪里?)500ms 听起来太长了。您可能想要测试位于亚洲的已知 DNS 服务器(例如f.ns.buddyns.com),以获得可以获得的延迟的下限。

答案4

正如其他人指出的那样,获取托管 DNS 服务是一个好主意。

我检查了我们的数据库(其中包括来自世界各地的名称服务器),500ms 的速度略高于 3%,因此它非常慢,而且对于 DNS 服务来说相当不寻常。

相关内容