Bind 9动态DNS记录是否支持自动删除或过期?
Bind 9动态DNS记录是否支持自动删除或过期?
嘿,这个问题我刚好折腾过!直接说结论:Bind 9本身没有内置的自动删除过期动态DNS记录的功能,所以默认情况下你确实得自己动手用脚本管理。
给你两个实用的实现思路:
- 第一种是从记录创建时就做好标记:每次用
nsupdate添加/更新记录的时候,给记录设一个较短的TTL(比如5分钟),同时在脚本里把这条记录的名称、最后更新时间存在本地的小数据库(比如SQLite)或者文本文件里。然后定时跑一个清理脚本,对比当前时间和记录的最后更新时间,一旦超过你设定的阈值(比如24小时),就用nsupdate发送删除指令把这条记录干掉。 - 第二种是直接从Bind里捞数据:可以用
rndc dumpdb -zones命令把你的动态区域数据导出到文件,然后写脚本解析这个导出文件,提取每条动态记录的最后修改时间(导出的文件里会有相关时间戳),筛选出超过有效期的记录,再用nsupdate批量删除。
另外提醒一句:如果你的动态更新是用TSIG密钥认证的,清理脚本也要用同一个密钥,不然Bind会拒绝你的删除请求哦。
备注:内容来源于stack exchange,提问作者mivk
相关产品推荐
相关产品推荐

