ping 和浏览器如何将同一个域解析为不同的 IP(在等待传播时)?

ping 和浏览器如何将同一个域解析为不同的 IP(在等待传播时)?

我经常会购买过期的域名,然后将其从某个随机注册商转移到我的注册商,然后我将 DNS 服务器更改为我的托管服务提供商的 DNS 服务器。

(我简化了一下,我不买任何东西,是我工作的公司买的)。

显然,完成上述操作后,我需要等待 DNS 传播,同时还要在我们的服务器上配置一些东西。对于其中的一些内容,我需要等待 DNS 传播完成才能执行任何操作;对于其他内容,我可以开始设置,然后等待 DNS 传播完成,以便这些内容正常工作。

我所说的“配置内容”是指为一些网站设置虚拟主机,或者设置重定向到其他具有预先存在内容的预先存在的域。

在此期间,我经常通过在浏览器中输入域名来检查传播是否已完成(至少在我所在的地方)。有时我会“命中”我的服务器(即域名解析为我的服务器的 IP),即使 DNS 更改才几分钟,但后来它又回到解析到旧服务器,这并不奇怪,因为传播才刚刚开始,我猜有时我会命中一个 DNS 服务器,有时我会命中另一个。

然而令我感到困惑的是,我经常会观察到这种情况,并且持续很长一段时间(即几分钟):

  • 如果我在浏览器中输入域名或从命令行启动 wget 命令,它会解析为旧域名
  • 如果我执行 ping 操作,它会解析为新的。

并不是随机交替,而是有系统地持续几分钟。

我的问题是:这两件事怎么可能不一致呢?

我认为,无论我是使用浏览器还是 wget 向域发出 https 请求,无论我是尝试使用 FTP 客户端连接到它,无论我是从终端运行 ping 命令,...无论我做什么尝试从给定的机器(通过给定的网络接口)访问给定的域,将域解析为 IP 地址的过程每次都应该遵循完全相同的路由,由操作系统管理,并且结果可以随着时间而改变(随着传播的进行),但不应该根据尝试访问域的应用程序而有所不同。我可以理解它是完全随机的(访问我所在地区的不同 DNS 服务器),但没有一个应用程序系统地获得一个结果而另一个获得另一个结果。

任何想法?

相关内容