kco*_*ode 25 domain-name-system ip hostname
有没有办法本地化 dns 条目?这意味着,来自亚洲的用户将 mydomain.com 解析为另一个 IP,而不是来自美国或欧洲的用户。这将有助于为用户提供附近的服务器。DNS 是迄今为止唯一使用的技术,这意味着我无法放置一些软件路由或中央系统来代替 dns 来解决这个问题。
Dav*_*ney 23
是的,目前有两种流行的解决方案可以解决这个问题。
第一个称为Anycast,其中相同的 IP 块实际上在世界各地的多个位置使用。也就是说,您域的名称服务器始终返回相同的 IP 地址,但该 IP 地址实际上分配给了不止一组物理服务器。
你可以在这里阅读更多关于它的信息http://en.wikipedia.org/wiki/Anycast
第二种技术再次涉及 AnyCast,但是这一次,被任播的 IP 地址范围是指我们的名称服务器本身。由于名称服务器也只会向离它们最近的客户端发出请求(由 BGP 的魔法决定),因此它们自己可以返回逻辑上客户端本地的 IP 地址。
一个例子是 google 的 l.google.com 域
来自澳大利亚的房东
crimson:~ dave$ host www.google.com
www.google.com is an alias for www.l.google.com.
www.l.google.com is an alias for www-notmumbai.l.google.com.
www-notmumbai.l.google.com has address 66.249.89.99
www-notmumbai.l.google.com has address 66.249.89.147
www-notmumbai.l.google.com has address 66.249.89.103
www-notmumbai.l.google.com has address 66.249.89.104
Run Code Online (Sandbox Code Playgroud)
来自美国的房东
[dave@odessa ~]$ host www.google.com
www.google.com is an alias for www.l.google.com.
www.l.google.com has address 74.125.95.99
www.l.google.com has address 74.125.95.147
www.l.google.com has address 74.125.95.104
www.l.google.com has address 74.125.95.106
www.l.google.com has address 74.125.95.105
www.l.google.com has address 74.125.95.103
Run Code Online (Sandbox Code Playgroud)
因此,CNAMEwww.google.com解析为www.l.google.com,但是当您解析它时,根据您的位置,您的客户端会收到一组不同的 IP 地址。这是因为接收请求的名称服务器是相对于客户端www.l.google.com的本地名称服务器。