基于维基百科对任播的描述,它包括跨许多DNS服务器分发域名到多IP的映射,以及用最接近地理位置(或最快)的服务器回复客户端。
在像google.com这样全球分布的,高度可用的网站(或者具有许多全球边缘位置的任何CDN服务)的情况下,这听起来像是人们需要的两个关键特征。
像亚马逊的Route53,EasyDNS和DNSMadeEasy这样的DNS服务都宣称自己是支持Anycast的networking。
因此,我的假设是,这些DNS服务中的每一个都透明地为我提供了这两个杀手级function:多IP到域映射,并将客户端路由到最近的节点。
但是 ,这些服务中的每一个似乎将这两个function区分开来,将第二个function(将客户端路由到最近的节点)称为“GeoDNS”,“GeoIP”或“全球通信总监”,并为该服务收取额外费用。
如果一个支持Anycast的系统的核心租户已经这样做了,为什么这个function被指定为这个额外的function呢? 什么是“GeoDNS”function,这是一个标准的Anycast DNS服务不能做的(根据维基百科的Anycast的定义 – 我明白什么是广告,只是没有为什么它已经暗示)。
当不支持这种模糊的“GeoDNS”function的Route53等DNS服务列出如下function时,我会感到特别困惑:
快速 – 使用全球范围内的DNS服务器全球任播networking,Route 53可根据networking条件自动将用户路由到最佳位置。 因此,该服务可为您的最终用户提供较低的查询延迟,同时为您的DNSloggingpipe理需求提供较低的更新延迟。
这听起来和GeoDNS的意图完全一样,但地理上指导客户是他们明确不支持它的东西。
最终,我正在从DNS提供商那里寻找以下两个function:
如上所述,似乎这是“Anycast”DNS服务(所有这些服务都是)的所有部分,但是我从他们那里看到的function和营销却表明了其他方面,这让我觉得我需要了解更多关于如何DNS在进行部署select之前工作。
在此先感谢您的澄清。
GeoDNS的主要优点是根据请求者的IP地址将同一个名称parsing为不同的IP地址。
无论是谁发问,任何一台DNS服务器都会返回相同的IP地址 。
这两个工作在不同的networking层。 Anycast在GeoDNS之下,因为它对请求者IP地址的位置没有任何意义,只是它在networking图中的位置。 什么可能靠近DNS服务器可能不接近所请求的资源 ,并且Anycasted DNS服务器无法告诉此。
GeoDNS使用资源位置图并执行逻辑来确定哪些资源最接近给定的请求IP地址,然后返回该IP地址。
除非您将DNS服务器与networking资源整合在一起,否则DNS服务器附近的东西并不总是靠近资源,所以使用Anycast作为您的数据本地化方法不如直接使用的GeoDNS有效。
BGP任播方面允许客户端发送一个请求到给定的DNS服务器,并通过BGP路由表获得该请求发送到附近的DNS服务器的实例,希望得到一个快速的回应。
然而,一个正常的DNS服务器在地理上分布和任何地方都不具有根据请求客户的位置不同地响应查询的能力 – 这是“地理DNS”服务提供额外成本的附加特征,允许你发送客户端到一个接近他们的服务的实例。
这个特性存在的原因是,BGP Anycast对于像DNS这样无状态的地方工作得很好,它在快速和肮脏的情况下不需要连接或会话持久性,但对于像Web服务器这样的事情,你想把世界各地的实例并确保给定的客户端将坚持一个特定的实例 – 全局BGP表中的连接路由变化将中断TCP连接,中断Web应用程序会话,并通常造成严重破坏; 由于这个原因,选播一般不用于Web服务器。
最好通过DNS为X县的用户提供X国实例的IP,这就是你用Geo-DNS服务分stream现金的地方。
传统上,你将有多个DNS服务器。 客户端会随机select一个,然后询问您的Web服务器的IP地址。 如果DNS服务器靠近客户端,这很好,但如果DNS服务器远离客户端,情况往往是糟糕的。 无论哪种方式,客户端将获得相同的IP地址作为答案。
Anycast允许多个服务器响应相同的IP地址。 使用Anycast DNS时,当客户端试图与您的名称服务器通话时,最接近/最快的名称服务器会作出响应。 这意味着客户端总是能够快速响应他的DNS查询。 然而,他仍然总是得到相同的答案,他的DNS查询 – 您的服务器的IP。 如果你的服务器远离客户端,客户端的体验可能不是最佳的。
GeoDNS允许DNS服务器使用不同的IP地址进行响应,具体取决于客户端的位置。 (显然这需要你有多个分布在不同地理位置的服务器。)GeoDNS并不意味着选播,尽pipe通常你都要部署这两个选项,这样一个客户端最终可以通过附近的地理位置的DNS服务器来回答他的DNS查询,地理上邻近的Web服务器的IP地址。