如何获取给定域的所有DNS条目的清单?


8

我需要将某些域移到其他DNS服务器,并且我想知道是否有任何方法可以获取区域文件的完整副本,而无需通过当前的DNS提供程序?

Answers:


15

我同意戴维(David)的建议:大多数服务器未配置为允许区域传输。话虽如此,您可以尝试给区域传输镜头。

dig @nameserver example.com axfr

替换您的域名服务器的名称和域名。

在Windows上,可以nslookup在交互模式下使用以进行区域传输。在nslookup提示下:

server nameserver
ls -d example.com

同样,用您的域名服务器名称和域名代替。

尝试所有名称服务器-有时我发现其中之一将允许区域传输。


ls -d example.com会显示所有内容,就像dig axfr
尼克·蔡

6

通常不会。

如果将DNS服务器配置为允许区域传输到任何地方,则您可以通过这种方式读取整个区域文件-但是,服务器不满足此类请求的情况很不常见,除非它们来自提供商,其他名称服务器或管理/监视计算机。


我不知道为什么DNS没有设计成没有这种障碍的完全开放的系统。确实,到现在为止,整个Internet确实应该是这样的,因为整个过程都是开放的,因此甚至不需要ISP。
flarn2006 '18

@ flarn2006“我想知道为什么DNS没有设计成一个完全开放的系统”。但是,为什么需要完整的区域内容?只有辅助的权威名称服务器需要与辅助的名称服务器同步,而AXFR是一种方法。但是其他客户端的用例是什么?它带来了隐私问题,因为zonefile中的某些记录可以提供个人可识别的数据……“对ISP甚至是没有必要的”是的,然后如何连接到Internet?
Patrick Mevzek

5

您可以使用任何DNS客户端nslookup,host,dig ...和dig run列出DNS服务器


dig domain.tld ns
如果DNS服务器允许通常用于DNS数据库复制和备份的tranfert区域,则可以使用dig实用程序获取区域文件,如下所示:

dig @dns.server domain.tld axfr


最后一个命令行效果很好。从文档dig -t AXFR domain.tld中看来,您必须要做,这对我来说真的很奇怪。
Alexis Wilke

当在您自己的服务器上本地运行时,此方法效果很好,并且您需要为该区域配置的资源记录的快速列表。
Anthony Geoghegan
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.