编辑
2023-05-22
其他
00
请注意,本文编写于 485 天前,最后修改于 485 天前,其中某些信息可能已经过时。

发现一个现象很久了,一直没有深入了解其中的原因。那就是为什么从全球任意地方访问Google的公共DNS服务器8.8.8.8时延都很低?

如果我们查询IP地址8.8.8.8的归属信息,我们会发现他是位于美国的,就跟114.114.114.114归属于中国一样。

image-20230522163545967

但是当我们从国内去访问这个服务器时,发现时延只有47 ms,这个时延根本到不了美国。

image-20230522163550903

后来,我在香港测试了一下,发现时延只有3 ms,难道这个DNS服务器是部署在香港的?

image-20230522163554654

再后来,我发现情况远不是这样,当我在美国访问时,他的时延是8 ms。同一个IP地址,在香港访问3 ms,在美国访问8 ms,这个美国到香港的时延最大是11 ms,绝对不可能。

image-20230522163558868

要知道美国到香港的地图距离是11000公里,按照光速算,也需要37 ms,全程光纤,最短的理论值也要55 ms以上。

同时,当我们从德国访问时,时延是2 ms。

image-20230522163602530

从新加坡访问时,时延也只有1 ms多点。

image-20230522163607494

这就说明一个问题,8.8.8.8这个IP地址应该不是真实的IP地址。

谷歌公共DNS服务器可以提供全球范围内的域名解析服务,用户可以在任何地方使用它来解析DNS查询请求。它的访问延迟低,可能有以下几个方面的因素:

**1、优秀的网络基础设施:**Google作为全球最大的互联网公司之一,具有强大的网络基础设施。它在全球范围内建立了多个数据中心和网络节点,使其可以为全球用户提供高速、稳定的网络服务。

**2、分布式架构:**8.8.8.8采用分布式架构,将服务部署在全球多个地理位置的服务器上。这种架构可以实现负载均衡和故障转移,减少单个服务器的负载,从而提高整体服务的可靠性和性能。

**3、全球覆盖:**8.8.8.8服务器分布在全球各地,为全球用户提供服务。Google在全球范围内的服务器资源非常丰富,所以无论用户在哪个国家或地区,都可以享受到高效、快速、可靠的DNS服务。

**4、DNS优化技术:**8.8.8.8采用了多种DNS优化技术,例如DNS over UDP和DNS over TCP等协议,以及DNSSEC安全扩展等技术。这些技术可以提高DNS查询的安全性、稳定性和效率,从而提高服务的质量和性能。

**5、强大的缓存技术:**8.8.8.8具有强大的缓存技术,可以缓存常用的DNS查询结果,从而减少对后端服务器的查询次数,加快查询速度。同时,它还可以根据查询频率和请求源地等信息动态调整缓存策略,优化查询响应时间。

验证一下,我先在电脑上将DNS服务器配置为8.8.8.8。

image-20230522163612067

然后测试一下从公网看到的信息。

image-20230522163616277

可以看到,显示的DNS服务器并不是8.8.8.8,而是其他香港的IP地址,具体有以下几个:

image-20230522163621219

然后我们检查一下这些IP地址,就可以发现,其实这些都是Google全球边缘网络节点的IP地址。

image-20230522163625784

所以,在没有明确确认原因之前,我有3个推测:

1、谷歌对于8.8.8.8这个IP地址做了CDN加速,与传统意义上对域名进行加速的CDN网络不同,谷歌是将DNS服务器的IP地址进行了就近解析,使用最近的分布式DNS服务器响应解析请求。利用这种架构,实现了DNS解析的负载均衡和故障转移。

2、服务器负载均衡,使用了类似于三角传输的部署模式。这种模式下,负载均衡设备与实服务器之间通过二层传输,且只有客户端的请求流量会经过负载均衡设备处理,实服务器的响应流量不会经过负载均衡设备处理。当客户端的请求流量经过负载均衡设备时,负载均衡设备根据健康检测方法、会话保持、负载均衡策略、调度算法等选出最优的实服务器,并向选中的实服务器发送访问请求。

此时,实服务器直接向客户端返回响应报文,响应报文不再经过负载均衡设备处理。此时的源IP地址为虚服务器的IP地址,目的IP地址为客户端IP地址。也就暴露了真实的DNS服务器IP地址,而不是8.8.8.8这个IP地址。

image-20230522163629992

3、NAT地址转换,谷歌利用自己强大的网络基础设施,在每个数据中心节点都向外发布了8.8.8.8这个IP地址,当流量通过互联网转发到路由器时,路由器将其转换为真实可用的IP地址。但是这种模式理论上不会暴露真实的IP地址,所以可能性比较小。

不管是哪种实现方式,谷歌DNS服务器都答复提升了查询的安全性、稳定性和效率。

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Gustav

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!