我们有一个 BIND 从属服务器无法将任何区域数据写入文件系统的情况。当此服务器重新启动并 BIND 重新启动时,它会使用比当前主服务器上的旧版本的区域文件启动。
在此期间,它能够从主设备接收 IXFR 传输,只是无法将这些更改持久保存到 HDD。
这让我想知道 BIND 服务器的预期行为是什么?在进入服务之前,它不会对其主人进行一些检查,这似乎是一个设计缺陷。
作为参考,这是从属端的绑定版本:
$ rpm -q bind
bind-9.8.2-0.47.rc1.el6_8.2.x86_64
我确实找到了这个参考:
其中规定了以下内容:
区域通知和刷新
除了重新启动服务器或使用 rndc 命令强制区域传输之外,还有两种机制会导致从属服务器检查其区域副本是否是最新的。检查和更新的过程称为区域刷新:
我将此解释为 BIND 在启动阶段没有做任何特别的事情。
嗯,没有完全阅读所有文档。有一段在同一页上说明了以下内容:
因此,听起来 BIND 从站将向主站发送通知,然后协调 IXFR 以赶上并开始提供更新的区域信息。