如何找到解析为给定网络范围内的 IP 的任何域名?

如何找到解析为给定网络范围内的 IP 的任何域名?

例如,给定范围:

172.128.0.0 - 172.191.255.255

我需要找到一些可解析为该范围内 IP 地址的域名。可以吗?我使用的是 Linux 系统。

答案1

那么,DiG 实用程序man dig)可以进行反向 DNS 查找,以查看给定的 IP 地址是否有关联的 DNS 记录。据我所知,它一次只接受一个地址,但你可以使用一些狂欢循环生成检查所有地址的命令。

for i in $(seq 128 191) ; do 
  for j in $(seq 1 255) ; do
    for k in $(seq 1 255) ; do
      dig -x 172.$i.$j.$k
      sleep 5
    done
  done
done

一行代码:

for i in $(seq 128 191) ; do for j in $(seq 1 255) ; do for k in $(seq 1 255) ; do dig -x 172.$i.$j.$k ; sleep 5 ; done ; done ; done

您可能需要该+short选项(或其他选项)来帮助将输出转换为某种有意义的形式。请参阅man dig可能的选项;语法如下:

dig +short -x 172.$i.$j.$k

答案2

有些网站提供所谓的被动 DNS 查询。它们通过监控 DNS 流量建立数据库并跟踪结果。

通常,DNS 查找仅提供有限的 IP 到主机名查找服务。如果 IP 空间的所有者费心设置反向 DNS (rDNS),它可以告诉您有一个到78.56.34.12.in-addr.arpa单个主机名的映射,但这不一定是全部事实,甚至根本不是事实。实际上,没有反向 DNS 信息或它给出的结果与相应的正向 DNS 信息不匹配是很正常的。通常,一个网络托管服务将有数百或数千个网站位于同一个 IP 地址;没有常规方法可以通过 DNS 找出它们是什么,只要输入 IP 地址即可。

(代码中的答案就是反向 DNS dig。)

被动 DNS 查看 DNS 查询的结果,通常是驻留在高流量 DNS 服务器上并观察其获得的结果。因此,如果有人(以某种方式被此服务跟踪)查询wild.example.com并因此获得 IP 地址,则结果将存储在 IP 地址到主机名的映射数据库中,随后可以查询该数据库。

例如http://www.bfk.de/bfk_dnslogger.html和/或https://www.dnsdb.info/

相关内容