有没有办法查询这个没有访问区域文件?
例如,我想要所有关于example.com的A,CNAME,MX和TXTlogging。
通过devise,获得这一点的唯一方法是通过区域传输,而最佳实践现在已经指出,应该只允许那些需要这种访问的特定IP地址。
但是,如果域的DNS服务器允许,则可以从命令行实用程序获取输出。 具体来说,在nslookup您可以inputls来启动一个,并且LS的选项取决于您正在使用的nslookup。 Dig也可以使用, dig @ns1.example.com example.com axfr 。
正如我所提到的,这需要名称服务器来允许区域传输。 这是一种违背最佳实践的configuration,所以现在它的效用可能非常小。
正如系统pipe理员所说,只有当您允许区域传输时,这实际上意味着只有当您使用自己的DNS服务器。 你会很难find任何互联网上的DNS服务器,这将允许它作为一个规则。
如果原因是您需要所有的DNSlogging,并且您没有托pipe自己的DNS,则可以致电您的ISP并要求提供完整的列表。
如果这不是你的域名,而你只是在四处游荡,那么你的运气不是很好。
其他人则表示,获得授权的数据库复制(无论是采用“区域转移”机制还是其他一些复制机制)是获得这些信息的唯一途径,因此答案是“否”。 (假定“不访问区域文件”意味着“我不会采取直接的方式,只是要求具有数据库的人员将其副本发送给我”)。
事实上,答案是“是”。 (前提是只需要获取DNS数据库模式包含的信息子集,而不是数据库logging标记,服务器端别名和macros)。 可以走NXT / NSEC / NSEC3logging来获取子域名的列表,然后发送这些名字的实际资源logging集的普通查询。