ISP 缓存旧 DNS

ISP 缓存旧 DNS

我希望你们中有人能帮助我。我在英国的 ISP(Virgin Media)正在缓存 DNS 设置。

我更改任何域的名称服务器和/或 DNS 设置。如果我使用whatsmydns.net,我可以看到设置已在通常大约 6 小时的时间内完全传播。在这种情况下,如果我关闭 Wi-Fi,我可以在手机上看到新的托管,但如果我通过家庭 Wi-Fi 连接并使用我的 ISP,我会看到旧网站。这种情况似乎持续了大约 4 天。

如果我对网站进行更改,那么我可以看到这些更改,但我只是看不到刷新后的 DNS。

还有其他人经历过吗?这对我来说真的很烦人,因为我经常更改 DNS 设置,而且我必须不断检查我的手机以查看更改的更新结果。

答案1

作为 Virgin Media(英国)的一名用户,我可以证明他们糟糕的 DNS 管理。另一方面,DNS 缓存非常常见;即时 DNS 配置在任何地方都不存在(也就是说,除非您有一个带有内部名称服务器的 Intranet)。 DNS 缓存的典型延迟是几个小时。

另一方面,绝对没有什么可以强迫您使用 ISP 的 DNS 服务器(实际上,一些 ISP 确实为您提供完全锁定的设备并不允许UDP数据包通过,但 Virgin Media 的情况并非如此)。您绝对应该使用您信任的名称服务器,而不是您的 ISP 强加的名称服务器。

我将在本示例中使用的名称服务器是 Google 的名称服务器(8.8.8.88.8.4.4)。您有两种设置选项:

配置路由器DNS

如果您的路由器有 DNS 配置选项,请使用它们,并将它们设置为8.8.8.88.8.4.4。您的路由器为您的机器提供所有DHCP参数,DNS 服务器也在这些参数范围内。

如果您像我一样使用最新的 Virgin Media超级枢纽,则无法更改路由器的 DNS 配置。解决这个问题的一种方法是配置虚拟机超级中心作为调制解调器并使用另一个路由器作为有效路由器。但这需要您拥有/购买一个额外的路由器。

在您的计算机上配置 DNS 解析器

如果您无法重新配置路由器向您提供的名称服务器,您可以配置您的计算机将使用的名称服务器。对于 U&L 网站来说,您的问题与主题无关,因为它没有明确询问任何与 UNIX 相关的内容。然而,鉴于我们在 U&L 上,我假设您在 *nix 机器上。

DNS解析器配置在该/etc/resolv.conf文件中,该文件需要编辑如下:

nameserver 8.8.8.8
nameserver 8.8.4.4

DCHP然而,如果您只是编辑该文件,该配置将被任何现代 *nix 系统上的服务覆盖。您还需要将DHCP服务配置为在从路由器检索 DNS 信息时不更新该信息。DHCP当今最常见的服务是通过dhcpcd套餐提供的(我相信)。

要配置dhcpcd为忽略从路由器获取的 DNS 信息(而不是覆盖resolv.conf),您需要确保该文件/etc/dhcpcd.conf没有未注释的行,如下所示:

option domain_name_servers

option请注意,可以在 内部的一行上设置多个s /etc/dhcpcd.conf。您需要确保domain_name_servers不存在于任何以 开头的行中option

相关内容