![一次查询多个域的 DNS](https://linux22.com/image/610196/%E4%B8%80%E6%AC%A1%E6%9F%A5%E8%AF%A2%E5%A4%9A%E4%B8%AA%E5%9F%9F%E7%9A%84%20DNS.png)
我最近移动了服务器,想要查询新服务器上的所有帐户域,以检查它们是否都解析到正确的 NS。
我目前正在使用http://www.whatsmydns.net/#NS这很棒。
然而,对于 100 个域名来说,这是一个相当缓慢的过程!
有人可以推荐一些可用的工具吗?
谢谢
答案1
dig
从命令行使用,或者nslookup
如果您使用的是 Windows。这两种方法都很容易编写脚本并获取所需的数据。
答案2
简单的 bash 脚本循环并输出每个域的 IP 地址:
mydomains=(
domain1
domain2
domain3
)
for i in "${mydomains[@]}"; do dig $i +short; done
答案3
它们是外部域还是内部域?无论如何,你可以运行以下命令:
我将在此使用 serverfault.com 作为我的示例域。
要解析主机名:www.serverfault.com
dig @4.2.2.2 www.serverfault.com +short
要查找您的域名的 NS,请转到 serverfault.com
dig serverfault.com ns
要查找您的域的权威名称服务器:
dig serverfault.com +nssearch
如果您有 100 个外部域,您可以编写一个 for look 并作为 shell 脚本运行。确保您尝试查询的所有区域都在单独的行上。如果您知道您的 DNS 或想要包含在 dig 命令中,您可以这样做:dig @4.2.2.2 $zone +short
在上面的命令中,4.2.2.2 是我的 DNS 服务器。
#!/bin/bash
while read zone; do dig $zone +short; done <myzones.txt
答案4
您可以使用我编写的这个工具查找多个 DNS 记录
http://www.matraex.com/quick-domain-research.php
它列出了域名、@ 和 www 的 A 记录(如果有)、域名的 MX 和 NS 记录,它列出了 WHOIS 联系人的电子邮件地址以及 Whois 上的 NS 记录,并将它们放在多个域名的表中。
我已经用它快速解决了许多与 DNS 相关的问题。