看起来有些公司出售域名列表,但他们的列表并不完整,并且每个公司对于特定 TLD 的条目数量都不同。
为什么关于现有/已注册/活跃域名的完整列表存在如此多的阴谋?为什么不直接在网上向所有人开放(当然,没有任何附加数据,只是域名)?
主要问题是——是否有正确的技术方法来自己建立这样的列表?
如果我理解正确的话,每个 TLD 都有经过认证的注册商,并且他们负责托管区域文件。
因此,如果要建立完整的列表,他们需要从所有注册商处获取完整列表并将它们合并在一起。
听起来很简单,但是却没有这样的列表。那么为什么会这样呢?从技术角度来看,我该如何正确地自己做呢?
答案1
从某种意义上说,有人可能会认为“正确”的技术方法是克服相关注册机构所要求的一切障碍来获取其 TLD 区域数据,或者,如果他们没有这样的程序,就不这样做。
关于 gTLD,ICANN 确实提供了中央存储库:
这集中区域数据服务为相关方提供集中点来请求访问区域文件由参与的顶级域名注册机构提供。随着数百个新 gTLD 添加到互联网,该服务是扩展区域数据传输的解决方案。
每个新 gTLD 注册机构都必须在技术授权其 gTLD 时向已获批准的请求者(例如执法人员、知识产权律师、研究人员)提供区域数据。
一旦执行了 gTLD 注册协议,新注册机构将获得使用集中区域数据服务的说明。
长期以来,各个区域都是单独提供的。例如,com 和 net 区域由 Verisign 提供(代表 ICANN 运营这些区域)。
对于 ccTLD,不存在像中央存储库这样方便的设施,并且每个注册中心可能有或可能没有允许访问完整区域数据的程序。
注册商不托管区域文件,顶级域名的名称服务器由注册局运营。注册商将数据提供给注册局。
答案2
这不是什么阴谋,只是这个列表太庞大了(截至撰写本文时,仅由 VeriSign (.net 和 .com) 处理的域名就有 133,182,309 个,假设每个域名平均有 13 个字节宽度的字符,那么仅域名就有近 2 GB,更不用说与域名条目相关的信息了)并且带宽需要花钱。
您可以向各个区域赞助商请求区域文件或注册为注册商(以便更好地访问区域文件)。继续使用 VeriSign 示例,您可以在此处查找 .net 和 .com:http://www.verisigninc.com/en_US/channel-resources/domain-registry-products/zone-file/index.xhtml和http://www.verisigninc.com/en_US/channel-resources/become-a-registrar/index.xhtml
您还可以注册以访问 whois 数据库的 API(通常需要付费,因为带宽并不便宜),或者从提供缓存副本访问权限的网站下载区域文件,例如http://www.premiumdrops.com/zones.html。
再次强调,访问每个 TLD 的列表需要其自己的流程。
最后,由于域名不断被注册/更新/过期,这些信息在您下载后就会过期。这个问题降低了维护此类可供下载的列表的价值。
附录:这还没有涵盖您(或您的目标客户)设置的 DNS 服务器不提供所有在其注册商处注册的 DNS 记录的情况,或者许多其他使此类列表变得无用的情况。