AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 963036
Accepted
Tedwin
Tedwin
Asked: 2019-04-15 14:49:25 +0800 CST2019-04-15 14:49:25 +0800 CST 2019-04-15 14:49:25 +0800 CST

如何将 DNS 记录传输到新的 DNS 提供商,而解决问题的停机时间很少或没有

  • 772

我想将 DNS 记录从 Network Solutions 传输到 DNS Made Easy,主要是为了利用 DNS Made Easy 提供的“DNS 故障转移”自动将几个关键 A 记录故障转移到我复制的数据中心的新 IP如果 DNS Made Easy 感知到本地主 IP 不可用,则服务器将用于 DR。

本指南很有帮助,但我不了解有关 TTL 的第一步。我对 TTL 的理解一直是在查询记录时,主机缓存记录的时间由 TTL 告知。如果这种理解是正确的,我该如何控制到期?

我的计划是:

  1. 闲暇时在新的 DNS 提供商上创建新的区域文件
  2. 晚上将注册商处的现有域名服务器更改为新的 DNS Made Easy 域名服务器,交叉手指等待早晨

对于 TTL,我可以做些什么来提高实现无缝连接的机会?

domain-name-system
  • 1 1 个回答
  • 962 Views

1 个回答

  • Voted
  1. Best Answer
    Patrick Mevzek
    2019-04-17T08:59:54+08:002019-04-17T08:59:54+08:00

    我对 TTL 的理解一直是主机缓存记录一段时间,如 TTL 所示

    这是正确的。TTL 是这样定义的,来自古老的 RFC1034:

    TTL 是 RR 的生存时间。该字段是以秒为单位的 32 位整数,主要由解析器在缓存 RR 时使用。TTL 描述了 RR 在被丢弃之前可以缓存多长时间。

    顺便注意:

    • 这是一个最大值,解析器可以在达到 TTL 值之前清空其缓存(出于策略原因或在缓存中腾出空间)
    • 如果野外的值被认为太低,一些解析器会将 TTL 值限制在最小值;通常在 5 分钟以下,您可能会遇到一些解析器不遵守它的风险

    通常建议对任何记录进行更改:

    1. 您将当前记录的 TTL 降低到 5 分钟
    2. 在进行下一步之前,您至少要等待上一个 TTL 的值
    3. 您更改记录,保持较小的值
    4. 你测试一切都是对的
    5. 然后您可以放回更高的 TTL 值

    要完整,根据您的 NS 基础设施,您可能还需要:

    • 降低 SOA MINIMUM 值,这实际上是“负 TTL”:这仅在您添加以前不存在的记录时才相关
    • 如果您不控制辅助名称服务器,则降低 SOA REFRESH 值,以便它们更快地获取新值(或向它们发送 NOTIFY 消息并确保它在不久之后触发来自它们的 AXFR/IXFR 查询)。

    您的情况略有不同:

    • 如果您更改名称服务器集
    • 并且如果新的名称服务器配置的区域内容与以前的完全相同
    • 那么这意味着联系旧名称服务器或新名称服务器将具有完全相同的效果
    • 因此您可以在不更改任何 TTL 的情况下更改它们。
    • 但是您至少需要在更改后等待父区域中 NS 记录的 TTL,以考虑所有解析器都将收到新的名称服务器集。只有在此延迟之后,您才能开始更改区域的内容。

    一些例子:

    $ for tld in com biz info org guru fr de ; do echo -n $tld ' '; dig @`dig $tld. NS +short|head -1` nic.$tld NS +noall +auth | grep "IN NS" | head -1 | awk '{ print $2}' ; done
    com  2d
    biz  2h
    info  1d
    org  1d
    guru  1d
    fr  2d
    de  1d
    

    PS:在签名域名(DNSSEC)的情况下,事情会稍微复杂一些。

    • 2

相关问题

  • Solaris DNS

  • resolv.conf 在经过一段时间后被更改

  • 为什么有些网站的网址中没有“www”就无法显示?[关闭]

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve