通过SVN检查DNS区域文件语法

我在开发环境中有服务器,我们通过svn仓库pipe理我们的DNS文件。 几天前,我们通过提交带有无效序列号的区域文件来搞砸我们的DNS服务器。

所以我想有一个规定,将有人提交之前validation区域文件的语法。 我知道validation区域文件的named-checkzone命令,但我可以在预先提交或提交后尝试这个吗? 如果是,那我该怎么做? 或者有没有其他的方法来完成这个?

任何帮助,将不胜感激。

更新

如果通过SVN无法实现,那么在重新加载bind守护进程本身之前,有没有办法在区域文件中检查语法?

使用Jenkins和SVN钩子testingconfiguration。

  1. 为每个configuration更改创build新的分支。
  2. 创buildJenkins作业,使用SVN挂钩来获取DNSconfiguration,然后运行“named-checkzone”。 如果一切正常,将该分支合并到主。 否则,发送configurationtesting失败的通知。
  3. 如果一切顺利,请将“主”部署到生产环境。

如果太多的话,可以修改init脚本或者systemd单元文件,在bind服务器启动和重装时运行“named-checkzone”。