如何防止绑定DNS更新删除$ INCLUDE指令

我启动了一个DNS服务器并运行了一个为我的域configuration的区域,并启用了allow-update指令。 我在文件/var/cache/bind/db.mydomain.com有该域的初始configuration,这个文件有一行$INCLUDE db.aux.mydomain.com指令从这个文件加载logging。

当我使用nsupdate更新区域时,问题出现了,因为bind通过删除$INCLUDE行并直接在db.mydomain.com文件中db.mydomain.com的内容来重写文件db.mydomain.com

我怎样才能防止这个?

我不认为你可以避免这一点。

当为区域启用dynamic更新时,您基本上将区域文件内容的控制权交给绑定; 您不再允许直接在文件中进行更改,绑定将需要在更新后重写。

至于$INCLUDE在这种情况下,如果要保留包含语句,会有什么约束呢?

在进行更新时,是否需要修改所有引用的文件?

如果某些包含文件是从多个区域引用的呢?

如果你为foo.aux.mydomain.com添加loggingfoo.aux.mydomain.com办? 绑定不知道文件名对你来说意味着什么,它不知道专门添加该文件中的条目。

如果dynamic更新不应该适用于该子域,则更好的select可能实际上是委托并将其作为单独的区域。