如果Anycast表示我在多个地理区域中看到的域名只有1个IP地址

时间:2019-04-13 22:28:16

标签: amazon-web-services google-cloud-platform dns ip

我想知道Anycast。从图中可以看出,您可以将一个IP地址映射到多个IP地址。这意味着您可以使用1个IP地址的接口,然后在后台将其重定向到地理分布的区域a或区域b。

对IP地址了解不多,我尝试这样做:

$ ping google.com
PING google.com (216.58.194.206) ....
....

对我来说google.com位于216.58.194.206 IP地址。我对此有一些疑问:

  1. 该IP地址是否会更改。
  2. 如果这是特定于区域的IP地址。
  3. 或者,如果这可能(在后台)重定向到特定于区域的IP地址,那么这就是问题。

我想做这样的事情:

mywebsite.com -> 123.123.123.123 -> 200.200.200.200 (region 1)
                                 -> 200.200.200.201 (region 2)
                                 -> 200.200.200.202 (region 3)
                                 ...
                                 -> 200.... (region n)

只有123.123.123.123可以连接到特定于区域的IP地址,而当您进行ping mywebsite.com时,无论您身在何处,都始终看到123.123.123.123

想知道它是否可以与Anycast配合使用,如果不能,则如何配合使用。我正在尝试构建一个系统,其中有很多区域用于可靠性和等待时间优化(与请求源的接近性),而同时拥有它,因此所有区域只有一个域。也就是说,中国没有zh.mywebsite.com,英国没有uk.mywebsite.com,等等,都只是mywebsite.com,并且在引擎盖下它重定向到适当的区域。另外,拥有中间123.123.123.123 IP的原因是为了使区域具有恒定的接口,因此当您执行ping mywebsite.com时,您将始终看到123.123.123.123,而不是{{1} }代表区域1,等等。或者也许没有办法解决,最好知道:该IP将始终解析为区域IP。

实际上,现在我再次尝试200.200.200.200时获得了一个不同的IP地址,因此出于某种原因至少有2个。

1 个答案:

答案 0 :(得分:2)

建议:提出一个问题,而不是一个涉及全球Internet设计的广泛问题。询问一个云提供商,而不是几个。在下面的答案中,我限制了所提供的详细信息的数量,否则答案将是一本书的大小。

  

我想知道Anycast。从图中看起来您可以   将单个IP地址映射到多个IP地址。这意味着你可以   具有1个IP地址的接口,但是在后台将其重定向   到地理上分布的地区a或地区b。

在Google Cloud中,全球IP地址用于将客户路由到最近的Google Edge位置,然后在该位置通过Google内部网络将流量发送到最终目的地。最终目的地取决于资源的类型。让我们假设Google Compute Engine或AWS EC2。

AWS为适用于Anycast IP地址的AWS Global Accelerator提供了类似的技术。

  

对IP地址了解不多,我尝试这样做:ping google.com

对于企业系统,通常的做法是让许多计算服务器为单个DNS端点(google.com)提供服务。 DNS服务器可以使用多个A记录对服务器进行负载平衡。负载平衡策略可以是轮询,最不忙,基于地理位置等。我不知道Google的DNS名称google.com的互联网设计,但是设计的可能性很大。该域还可以由隐藏后端实现的负载均衡器提供服务。使用负载平衡器是一种典型的设计,但是较旧的旧版设计使用DNS服务器。

  

该IP地址是否会更改。

答案是“是”,“否”和“也许”。答案取决于系统的内部设计。容错的弹性设计不需要固定的静态IP地址。 DNS服务器的目标是在需要转换的时间点将DNS名称(google.com)转换为IP地址(216.58.194.206)。

  

如果这是特定于区域的IP地址。   或者,如果这很可能是(在幕后)重定向到特定于区域的IP地址,那是一件容易的事。

这取决于Google在内部设计其系统的方式。 Google提供全球和地区IP地址。

  

仅123.123.123.123可以连接到特定于区域的IP   地址,而当您ping mywebsite.com时,您总是会看到   123.123.123.123无论您身在何处。

您强加了不必要的设计标准。 DNS服务器可以提供域名的IP地址转换。您的问题表明缺乏了解如何管理公共和私有IP寻址,如何转换和路由地址以及与DNS服务器,负载平衡器和自动缩放的相互作用。希望我的回答可以帮助您知道要学什么。

  

我正在尝试构建一个有很多区域的系统   可靠性和延迟优化(与请求源的距离近),   而同时拥有它,因此所有域只有1个域   地区。

拥有一个域名(example.com)并在欧洲,美国,南美和亚洲设有服务器很容易通过任何云提供商来实现。不需要任何播客。您只需要全局负载均衡器(Google)或区域负载均衡器(AWS),以及Google和AWS都提供的现代DNS服务器。

您已经创建了一个涉及AWS和Google Cloud的问题。这两个提供程序在高层上非常相似,但实现细节却大不相同。选择一个,了解DNS,负载均衡器和自动扩展在AWS或Google上如何工作。注意:您可以混合使用AWS和Google Cloud来达到设计目标,但是为什么要增加这一层的复杂性。设计越复杂,设计就越脆弱。这意味着需要更多的人工或机器管理层来进行日志记录,监视,指标和警报。