首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将DNS记录传输到新的DNS提供程序,解决时很少或根本没有停机时间

如何将DNS记录传输到新的DNS提供程序,解决时很少或根本没有停机时间
EN

Server Fault用户
提问于 2019-04-14 22:49:25
回答 1查看 1.4K关注 0票数 1

我想把DNS记录从网络解决方案转移到DNS变得容易,主要是利用DNS提供的"DNS故障转移“( DNS故障转移),它很容易自动地将几条密钥A记录转移到我的数据中心中的新IP中,在那里,如果DNS轻松地感觉到prem上的主IP是不可用的,我就将服务器复制到DR。

本指南是有帮助的,但我不明白关于TTL的第一步。我对TTL的理解一直是主机缓存记录有一段时间,这是TTL在查询记录时告诉的。如果这种理解是正确的,我如何才能控制过期?

我的计划是:

  1. 在空闲时间在新的DNS提供程序上创建新的区域文件
  2. 将注册中心现有的名称服务器改为新的DNS,使名称服务器在夜间变得简单,请双手交叉,等待早晨。

关于TTL,我能做些什么来提高我使这个无缝的机会?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2019-04-16 16:59:54

我对TTL的理解一直是托管缓存记录的时间,正如TTL所告诉的那样。

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

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

顺便说明:

  • 它是一个最大值,解析器在到达TTL值之前可以自由地清空其缓存(出于策略原因或在缓存中留出空间)。
  • 如果野外的值被认为太低,一些解析器会将TTL值压缩到最小;通常在5分钟以下,可能会有一些解析器不遵守它。

通常情况下,对任何记录的更改都是这样建议的:

  1. 您将当前记录的TTL降低到大约5分钟。
  2. 在进入下一步之前,您将等待at最小的上一个TTL的值。
  3. 您更改记录,保留小值。
  4. 你测试一切都是正确的
  5. 然后,您可以返回一个更高的TTL值。

要想完整,取决于您的NS基础设施,您可能还需要:

  • 要降低SOA的最小值,实际上是“负TTL":只有在添加以前不存在的记录时,这才有意义。
  • 若要降低SOA刷新值,如果您不控制次要名称服务器,则它们将更快地获得新值(或向它们发送通知消息,并确保它在不久之后触发AXFR/IXFR查询)。

你的情况略有不同:

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

下面是一些例子:

代码语言:javascript
复制
$ 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
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/963036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档