众所周知,DNS服务器在网络访问中起着极其重要的作用,它将 URL 域名转换为 IP 地址以供设备访问,既然DNS服务器可以承担将URL域名转换为IP地址的任务,那么DNS服务器是否可以加快我们的网络访问速度呢?
案例1:如果服务器有多个IP地址
当一个网站为业务需要部署了多台服务器,并且这些服务器的IP地址不同时,DNS服务器在响应DNS查询时会将所有这些IP地址返回给我们的计算机。通常,我们的电脑会选择第一个IP地址进行访问。换句话说,在这种情况下,我们访问网站的延迟取决于我们第一台服务器的网络延迟。
图 1:如果服务器有多个 IP 地址
如果我们运气不好,电脑恰好选择了最差的地址,我们的上网体验就会最差,好在我们要访问的网站的服务器都在同一个城市,不同服务器的访问体验应该也不错。
案例2:如果服务器分布在不同的地方
现在情况越来越糟,有一个城市,服务器位于离我们住处数千公里的地方,这时候如果我们的电脑选择最远的服务器,可想而知网络访问体验肯定会变差。
图2:如果服务器分布在不同的地方
案例3:如果服务器分布在不同的运营商网络中
情况越来越糟。为了给不同的 ISP 用户提供最佳的体验,服务器设计为在每个 ISP 网络中部署一台。
图 3:如果服务器分布在不同的运营商网络中
这时候,如果我们不幸选择了和我们不在同一个ISP的服务器,因为不同的ISP经常通过几个固定接口的机房进行数据通信,这会导致我们访问服务器的流量来回循环. 这种情况通常会导致可怕的经历。
案例4:不同的DNS服务器
当我们选择不同的DNS服务器时,我们会有怎样的体验?
假设我们住在 A 市,我们设置的 DNS 服务器是 B 市,距离数千公里,很明显,我们的每一个HTTP请求都会被转发到B市的DNS服务器,然后B市的服务器会返回服务器的IP地址,这显然比我们选择A市的DNS服务器要差。
图 4:不同的 DNS 服务器
案例5:不同的DNS服务器会影响我们的网络下载速度吗?
答案显然是否定的。正如开头所说,DNS服务器只负责为我们解析URL对应的服务器IP地址,我们的下载速率取决于 ISP 提供给我们的带宽,DNS 服务器对此没有影响。
总结
- 显然,DNS服务器的选择会影响我们网站的访问速度;
- DNS服务器的选择不会影响我们的下载速度;
- 设置DNS时,可以尝试ping DNS服务器地址,选择ping延迟最小的DNS服务器作为主DNS,可能会带来更好的体验。