扫描和获取所有DNS条目的方法

时间:2013-08-30 21:46:54

标签: database dns reverse-dns

我想进行一次体验,我需要一个关于互联网上所有DNS条目的完整数据库。

扫描互联网并获取所有DNS条目是否切实可行? 有什么限制:存储,时间或网络带宽? 有什么好的方法可以开始吗? (我总是可以强行扫描IP空间并进行反向DNS查找,但我想这不是有效的方法)

1 个答案:

答案 0 :(得分:2)

下载像RIPE或ARIN这样的数据库将无法获得您想要的反向DNS条目。实际上,您只能获得自治系统和解析这些范围的DNS服务器。没有其他的。检查一下:ftp://ftp.ripe.net/ripe/dbase/ripe.db.gz

反向DNS查询只能获得所有DNS条目的一小部分。事实上,没有人可以拥有它们,因为大多数域名都不接受AXFR请求,并且在某些国家/地区可能被视为非法。要访问.com / .net / .org域名的完整列表,您可能是ICANN或ICANN经销商,但您永远不会获得其他公开可用的TLD(多个国家/地区)

然后,最好的方法是强制所有反向ip分辨率+成为像谷歌这样的互联网巨头设置你自己的公共DNS +尝试在你的每个域名上执行AXFR请求&# 39;能够检测到。

混合所有这些选项是获得所有DNS条目的重要部分的唯一方法,但绝不是100%,可能不超过5到10%。忘记强制使用whois服务器来获取域名列表。它的条款和条件禁止它。

我们现在正在强制执行反向ipv4解决方案,因为它是唯一合法的方式,而不是谷歌。我们在两周前开始。

经过两周的调整后,我们已经完成了20%的互联网。我们开发了一个python脚本,从几个不同的节点并行启动数千个线程扫描/ 24个范围。

它比nmap -sL快,但它不如nmap可靠,所以我们需要第二次传递"填补我们得到的空白(第一次尝试解决了85%的IP)。必须定期重新扫描才能获得完整且一致的数据库。

现在我们有几台服务器在每个节点上以2mbps的DNS查询运行(每个节点上300到4000个查询/秒,主要取决于我们的服务器和远程DNS之间的RTT) 。

我们希望在大约30天内完成所有IPV4条目的首次通过。

我们存储preeliminary结果的文本文件平均每个" A类"范围(即111.0.0.0/8)。这些文件只是" IP \ tname \ n",我们只存储已解析的IP。

我们需要在每台服务器上配置DNS,因为我们正在影响我们提供商的DNS服务并阻止了我们。事实上,我们在不同的DNS服务器上进行了一些基准测试。忘了Bind,它很重,你几乎不会超过300分辨率/秒。

一旦我们完成扫描,我们就会发布文章并共享数据库:)

在Twitter上关注我:@kaperuzito

我们已经得出的一个结论是,人们可能会对他们在DNS PTR条目中输入的名称三思而后行。您无法为IP"工资单"," ldap"," intranet"," test"," sql&命名#34;," VPN"等等......那里有数以百万计的人:(