将 DNS 序列号更改为过去值

将 DNS 序列号更改为过去值

我前任为我所在的组织设置了一些 DNS 服务器。他没有使用标准的序列号格式,而是使用了一种从 2033 开始的奇怪格式。我想用自己的 DNS 服务器替换他的 DNS 服务器,但我担心使用 YYYYMMDDXX 将序列号更改为“正确”的格式会比较麻烦,因为 YYYYMMDDXX 的数字会比较小。

这些是我们的公共 DNS 服务器,我只是想确保这样做不会出现任何问题。有人经历过这种转变吗?

答案1

如果他的号码以开头2033大于年月日标准,那么您可以重置该值。

这是一个描述的文章程序。基本上,您必须利用序列号是 32 位整数这一事实,如果您使用更大的值,它将换行。

答案2

我自己不需要这样做,但我收藏了一个解决方案(如何修复 SOA RR 序列号)来自Pro DNS 和 BIND以防我自己也犯这个错误。

答案3

您可以将序列号设置为任意值。默认情况下,除非序列号更高,否则辅助服务器不会进行区域传输,但只要您有直接访问权限,就可以命令它们强制传输并重新加载。只需将序列号设置为您喜欢的值,然后向辅助服务器发出重新传输命令,这样它们就会去获取新信息,尽管序列号较低。

答案4

正如所说,SOA 资源记录中的 SERIAL 字段 没有所谓的“标准格式”。它甚至不是用过的所有 DNS 服务器软件都支持该功能。(如今,世界上相当一部分地区甚至不使用区域传输数据库复制。)对于 ISC 的 BIND,它只是一个数字,其特定值没有任何内在含义,用于在区域传输数据库复制期间检查副本是否已过期,并且人们可以选择任何自己喜欢的方案来设置它,但前提是,正如所指出的,“较新”必须意味着“更大的数字,模 32 位”。

你已经遇到了这里的陷阱。无论选择哪种方案,一定会有人出现并且(缺乏信息)不理解它,或者想要改变它,就像你不理解并想要改变在你之前的人的方案一样。这就是没有记录系统管理选择.因此记录你的选择。

相关内容