chroder Asked: 2009-05-02 13:35:55 +0800 CST2009-05-02 13:35:55 +0800 CST 2009-05-02 13:35:55 +0800 CST DNS服务器上的域列表? 772 有没有办法在我的 BIND DNS 服务器上获取 A 和 CNAME 记录的完整列表? 我可以访问区域文件。但是在我的服务器上有很多区域文件,手动浏览所有文件需要很长时间。是否有列出此信息的命令或者我必须自己编写脚本? domain-name-system bind 3 个回答 Voted Best Answer Alnitak 2009-05-03T00:52:38+08:002009-05-03T00:52:38+08:00 grep不要在所有区域文件上使用,而是使用: % rndc dumpdb -zones 这将创建一个名为 的服务器权威数据的转储named_dump.db,可能在/var/named/data(或类似的)中。 这个文件比原始区域文件更容易解析,因为每一行都以它所应用的域名开头。原始区域文件可能是缩写的。 ConcernedOfTunbridgeWells 2009-05-02T13:53:56+08:002009-05-02T13:53:56+08:00 从您的var/named/data(或等效目录)grep 到带有适当正则表达式的 db.* 文件,例如: grep '\(. *A *[0-9][0-9]*\)\|\(..*CNAME..*\)' db.* 请注意,最终的 'db.*` 会覆盖所有 db 文件。对您拥有区域文件的每个目录重复此操作。 dmourati 2011-04-13T06:06:03+08:002011-04-13T06:06:03+08:00 因为我在我的域列表中;做 dig -t axfr $i @localhost; 完毕 必须首先允许从本地主机进行区域传输。
grep
不要在所有区域文件上使用,而是使用:这将创建一个名为 的服务器权威数据的转储
named_dump.db
,可能在/var/named/data
(或类似的)中。这个文件比原始区域文件更容易解析,因为每一行都以它所应用的域名开头。原始区域文件可能是缩写的。
从您的
var/named/data
(或等效目录)grep 到带有适当正则表达式的 db.* 文件,例如:请注意,最终的 'db.*` 会覆盖所有 db 文件。对您拥有区域文件的每个目录重复此操作。
因为我在我的域列表中;做 dig -t axfr $i @localhost; 完毕
必须首先允许从本地主机进行区域传输。