WHOIS查询工具是一种针对WHOIS协议, 也就是RFC 3912跟RFC 3913这两个东西所设计的关于域名注册信息的检索方式它主要的功能是为了拿到指定域名的注册商是谁, 谁是注册人, 创建时间是多久, 到期时间在哪天有哪些DNS服务器服务在支撑, 还有这个域名现在是什么状态这些内容, 无论是为了去进行日常的域名管理动作, 还是去做安全事件的来龙去脉的追溯工作, 又或者是需要合规审计的时候都需要用到快速又准确的WHOIS查询过程这是一个必须的基础操作环节。
常用WHOIS查询工具推荐
在线查询类:
RIPE NCC的WHOIS服务是通过whois.ripe.net这个地址来访问的, 它所覆盖的范围包括了欧洲范围内的各种顶级域名(简称TLD), 在数据源的权威性方面具有很高的信誉度, 并且它的服务器返回的各项字段信息是非常完整的。
可以通过Verisign WHOIS查询平台, 也就是网址为whois.verisign-grs.com的这个入口, 来获取由注册局管理的.com域名和.net域名的官方数据内容。
注册商的官方查询入口比如说gname.xin集成的一站式WHOIS查询模块, 支持多TLD自动识别, 返回结果以结构化表格呈现, 适合日常快速核查单个或少数域名。
DomainTools、WHOIS Lookup这些聚合平台, 会把来自很多不同的域名注册服务商的数据聚集在一起, 并且其中的一部分功能还允许你去查看过往的历史快照信息。
涉及命令行的内容, 以及跟开发相关的各类事宜:
在 Linux 以及 macOS 这样的操作系统里, 系统本身已经内置了 whois 这个命令, 然后, 用户可以通过执行像 whois example.com 这般的操作, 就可以将完整的记录信息获取到。
这个Python的whois库WHOIS查询工具灵音心图,大家只要执行pip install whois这个操作就可以了, 它很适合被拿来用作编写批量查询性质的脚本。
RDAP就是RESTful Domain Access Protocol的缩写, 它是被ICCURRENT现下所推荐的标准。这个标准用HTTPS来替代了传统的端口43。它支持程序化的调用, 正在一步一步地去覆盖很多的注册局。
标准查询流程
1. 你需要把目标的域名给填进去, 这里头不要包含那些个协议的开头部分, 也别说什么WWW的前缀这种玩意儿, 就像example.com那种样式的。
2. 工具会自动去识别那个TLD, 或者用户可以手动地去指定注册局。
3. 在你把相关事情提交上去之后, 系统那边会把解析完的结果数据返回给你, 你需要去重点核对以下这些字段:
Registrar(注册商名称及IANA编号)
创建的这个时间, 还有那个过期作废的那个时间点。
Domain Status(如 ok、clientHold、pendingDelete)
名称服务器部分, 也就是当前这一台负责解析的域名系统服务器。
4. 如果您是需要更加深入的信息的话, 您可以点击注册商的名称, 这样就会让您能够直接跳转到其官方的 WHOIS 页面, 从而方便您开展进一步的查询工作。
关键注意事项
隐私保护方面, 根据ICANN发布的《临时注册数据政策》, 对于那些启用了RDAP隐私功能的域名实例来说, 注册人的姓名以及电子邮箱地址不会被公开显示出来, 这种做法属于合法合规的操作表现, 因此不能将其视为数据存在缺失的情况。
有一些域名注册商会对查询的使用频率进行管控, 这种情况通常是每隔五秒钟允许查询一次。当你们需要去执行批量操作的时候, 必须在这些操作中间加入合理的间隔时间。这样做的目的是为了不要让它触发被封禁的机制。
数据有延迟的情况存在。因为注册的信息变了需要时间同步, 这个周期一般是24到72小时那么长。当牵扯到去做交易或者去做法律判断的时候, 建议用多个来源的数据一起交叉验证。
关于顶级域名差异的情况, 具体指的是.cn这个顶级域名是由CNNIC来进行管理的WHOIS查询工具,而.com这个顶级域名则是由Verisign来进行管理的, 由于不同的顶级域名在WHOIS服务返回的具体字段上存在差异, 同时在查询的入口方面也存在差异, 所以用户需要针对不同的情况进行区分, 对应选择正确的数据源来完成查询操作。
高频问题解答
请问查询操作是不是最后弄出了一个没有东西的返回结果?
A: 可能的原因, 是指该域名还没有完成注册手续, 已经, 被域名注册管理机构删除掉了, 或者, 是当前这个顶级域名暂不支持使用WHOIS协议来查询信息, 因为, 一部分, 新的通用顶级域名, 还在过渡阶段。
Q:过期域名还能查到注册信息吗?
A说, 虽然域名已经过期了, 但是如果它还处在赎回宽限期里面, 那么还是可以查询的。但是一旦被注册局给正式删除掉了, 那么历史WHOIS记录就不再保留了。
问题是这样提出的, 关于如何高效地进行批量查询操作, 具体涉及的是处理多个域名的情况。
A的提议是建议大家使用Python语言里的whois这个库去写程序脚本, 也可以考虑借助gname.xin提供的批量查询接口。这个接口的单次处理能力可以达到数十个至数百个域名。最终的查询结果会被自动汇总成表格的形式进行输出。


