我已经将 BIND 和 ISC DHCPD 配置为协同工作(使用密钥进行更新)。现在它并不是完全不起作用:最常添加的是前向映射等。
然而,很多时候,区域的 .jnl 文件(日志)毫无理由地留在那里,主区域文件没有更新。这导致在 DHCP 租约获取后无法解析某些主机(如果主机最初不在区域文件中,或者导致旧地址)。
权限如下所示:
-rw-r--r-- 1 bind bind 691 Dec 10 11:06 myzone.zone
-rw-r--r-- 1 bind bind 765 Dec 10 12:17 myzone.zone.jnl
但这不应该是权限问题,因为区域确实(经常)通过 DHCP/DDNS 进行更新?
该问题的根源是什么以及如何解决?
操作系统:debian 7.2 x64,稳定版本绑定和 isc-dhcp 服务器。
答案1
我之前看过这个。
重新启动named
会将文件中的更新数据刷新.jnl
回区域文件,但还有另一种方法。
rndc freeze <zone>
但这会禁用 DDNS,因此应随后
rndc thaw <zone>
重新启用它,并清除.jnl
文件。
显然有一个rndc sync
在 Bind 9.9 中。
答案2
对于 bind 9.9,“rndc sync”是不够的;您还需要“-clean”标志:
同步[-干净的] [区域 [类别 [视图]]]将动态区域的日志文件中的更改同步到主文件。如果指定了“-clean”选项,则日志文件也会被删除。如果没有指定区域,则所有区域都会同步。