admin 发表于 2022-7-18 10:38:03

DNS 系列(一):为什么更新了 DNS 记录不生效?

如果我们想在互联网上访问另一台机器的内容,我们通常只需要直接输入一系列地址,例如:www.upyun.com,您可以准确访问您想要访问的网站。但事实上,这只是一个方便我们记忆的字符形式网络标志。真正让我们的机器与另一台机器交流的是 IP 地址。只不过 IP 地址无论是输入还是记忆都非常麻烦,因此才诞生了域名系统。那么域名是如何连接到服务器的呢? IP 呢?这就是我们今天要谈论的域名系统 DNS 有关了。DNS 是什么?
因为有意义的名称可以表示主机的帐户、工作性质、区域和组织,以便于记忆和使用。因此,用户更喜欢用名字来识别主机,DNS 它是为这种需求而开发的。DNS 代表域名系统(Domain Name System)。该系统将域名(example.com)实际翻译 IP 地址。
DNS 由分层域名树组成的逻辑结构 Internet 网络信息中心(InterNIC)管理域名树的根称为根域.说,但这通常是省略的。需要注意的是,世界上只有 13 台 IPv4 根域名服务器。
顶级域位于根域下(TLD),分为国家顶级域(ccTLD)通用顶级域(gTLD)。国家

顶级域以下是二级域,是组织和个人正式注册的唯一名称,如 www.upyun.com 中的 upyun 这是另一个注册的域名。在二级域下,组织机构也可以为各分支部门划分子域。但标准规定,域名的长度通常不超过 63 一个字符最多不能超过 255 个字符。
当然了,DNS 不仅可以指向 IP 地址还支持其他形式的记录。 DNS 记录形式有:

[*]A 记录:域的 IPv4 记录地址。


[*]AAAA 记录:域的 IPv6 记录地址。


[*]CNAME 记录:别名,将一个域或子域转发到另一个域,不提供 IP 地址。


[*]MX 记录:将邮件定向到电子邮件服务器。


[*]TXT 记录:管理员可以将文本注释存储在记录中。


[*]NS 记录:存储 DNS 名称服务器的条目。

一个独特的域名可以让用户深深地印在他们的脑海中公司的品牌。虽然域名可能是永恒的,但记录指向地址和使用 DNS 由于需求,服务器经常发生变化。有时我们会遇到修改 DNS 记录后,实际访问的地址没有更新,这涉及到 DNS 传播。什么是 DNS 传播?
一般来说,我们分析网站的域名记录或 DNS 更改服务提供商后,世界上所有的服务器都需要一段时间才能使用新的记录值,可能是几个小时或几天。这个过渡阶段是 DNS 传播。
DNS 传播因 DNS 服务器负载不同。服务器越旧,需要更新的时间就越长。因此,在过渡期间,其他提供商将使用新地址,但一些旧服务器的服务提供商可能没有更新。这是因为连续查询新地址会导致负载过高,所以 DNS 服务器不会在缓存中临时存储更新信息,只有当所有服务器都更新缓存时,新地址才会同步在所有地方。
除了服务器负载,还有一些因素会影响 DNS 传播。
影响 DNS 传播的因素
DNS 区域和 TTL 值
DNS 它被分成许多不同的区域,即 DNS 命名空间的一部分由特定的组织或管理员管理。区域文件存储在 DNS 服务器中的纯文本文件包括区域的实际表示和区域内每个区域的所有记录。
我们可以为域名区域文件中的每个 DNS 设置 TTL。TTL 代表生存时间 DNS 信息时间段。它可以定义设置临时缓存、存储时间和更新时间。TTL 值对于 DNS 传播至关重要,如果 TTL 值为 24 更改后需要小时 1 天才生效。当然,我们可以调整更新可以更快地生效 TTL 值。但由于调整必须在更新前进行,因此必须进行调整 TTL 也属于 DNS 传播也需要一段时间才能生效。另外,注意不要将 DNS TTL 设置为 0,因为标准中没有定义数字 它可能会导致 DNS 信息被忽略或拒绝。
如果用云解析修改域名的解析记录,最终生效时间取决于当地运营商 DNS 一般来说,服务器缓存刷新时间相当于设置分析时 TTL 时间。例如,在分析设置中 TTL 值为 10 分钟后,修改分析 10 全球生效将在几分钟内实现。

如果是修改 DNS 服务器的生效时间取决于本地 DNS 缓存的域名 DNS 服务器名称 TTL 例如,时间.com”顶级域是 48 小时,“.cn”是 24 小时。因为顶级域不同。 DNS 服务器的 TTL 时间不同,理论上修改域名 DNS 全球解析服务器最长 48 小时。
ISP(Internet 服务提供商)
另一个影响 DNS 使用传播持续时间的因素 Internet 服务提供商(ISP)。ISP 会将 DNS 数据缓存在本地,每个请求都是在缓存检索数据而不是 DNS 服务器。这种做法的优点是响应更快,数据流量减少。但这可能是对的 DNS 影响传播。此外,一些 ISP 会直接忽略 TTL 每两到三天固定一次缓存记录。
服务器的位置
服务器的位置也会正确 DNS 影响传播。记录的更改可以在短时间内就近 DNS 服务器生效,但通常需要更长的时间才能到达世界另一端。因为不同的服务器需要通知对方一个接一个地更改记录。正如第二条所提到的,因为有些服务器可能只在特定的时间间隔内更新,所以所有的更新都需要很长时间。
DNS 传播的时间
那实际的 DNS 传播需要多长时间?本地服务器通常在几分钟或几小时内更新。然而,世界上所有的服务器都知道这些变化,通常需要很长时间才能生效 1 至 2 天内有可能生效。而且服务提供商的设置,也可能出现 72 一小时后才全部更新。因此,当需要更改或切换记录时,应提前安排 DNS 传播很重要。
在某些情况下,DNS 传播会影响网站的访问,这是不可能完全避免的,但可以通过一些方法最小化持续时间。比如在更改 DNS 在服务器之前,我们可以修改分析记录 TTL 值,设置得小一点。等TTL更新值后,再修改 DNS 服务器。但即使没有传播,也不会影响域名分析记录的修改。即便 DNS 服务器还是旧的,但是分析记录会实时更新,网站内容会是最新的。
当然,如果修改分析记录,已经过去了 TTL 时间发现或访问旧记录,您可以尝试删除当地记录 DNS 缓存 DNS (114.114.114.114/8.8.8.8)再试一次。
DNS 传播检查
如果没有工具来确定网站的 DNS 传播是否已经完成。可以通过几种方式对当地进行 DNS 进行 DNS 确认传播检查的方法。Windows、macOS 和 Linux 默认安装了 nslookup,它可以显示当前 DNS 服务器的分析状态。Dig 工具也是不错的选择。

daoshen1 发表于 2022-7-24 06:37:32

回的人少,我来小顶一下
页: [1]
查看完整版本: DNS 系列(一):为什么更新了 DNS 记录不生效?