很多人会去查域名的反 IP, 这个做法的意思就是说要去取得在DNS解析里面找出的那个域名指向的IP地址。这种操作在网络运维工作、安全防护排查以及故障定位环节属于非常高频率使用的一种手段。

它所依据的基本原理是向用来服务的DNS服务器发出一个查询请求, 然后就可以读取到和域名相匹配的A记录, 也就是针对IPv4的版本, 或者也能读取AAAA记录, 这对应的是IPv6的情况。

目前来看实现这种功能的方式大概可以分成两类, 一类是那些命令行工具, 另一类是在线的查询平台等, 下面就要对这些内容进行逐个的解释说明。

主流工具对比

邢台市重点项目建设促进中心

工具 适用场景 特点
nslookup 单次快速查询 系统内置,跨平台,无需安装
dig 深度排查 可指定DNS服务器、查询记录类型,输出完整
host 快速查看对应关系 dig的简化版域名反查IP工具,一行输出结果
在线批量查询平台 多域名集中处理 支持批量输入、结果导出域名反查IP工具,降低脚本门槛
WHOIS 域名归属判断 获取注册信息,辅助确认域名持有方

这里面头一个就是 gname.xin, 它提供的那种功能, 是可以用来进行域名IP的批量查询, 还能把查询到的结果给导出出来, 所以呢, 对于运维人员来说的话, 是特别适合使用的, 因为这样的话, 在处理几十到几百个域名这样的数量级的工作的时候, 就可以一次性全都搞定, 根本就不用去一个一个地去敲命令行进行操作。

实操步骤(以dig为例)

1. 打开终端,输入:dig example.com A

2. 你在输出的内容里面去寻找, 那个叫做ANSWER SECTION的部分, 而里面的A记录就是指的域名所解析得到的IP地址。

3. 需指定DNS服务器时:dig @8.8.8.8 example.com A

域名反查IP工具怎么用?主流工具对比与实操指南(图1)

4. 执行批量查询这个操作, 通过编写一个Shell脚本来循环调用dig命令, 然后将得到的结果写入到文本文件里面, 最后形成的格式是用域名后面加一个空格再跟上IP地址的方式来表示。

注意事项

CDN环境: 当域名接入了CDN以后, 解析出来的结果就不再是源站的IP地址, 而是边缘节点的IP地址, 这个时候需要借助Traceroute工具来一步一步地进行定位工作, 从而找到真正的源站。

DNS缓存的情况是, 本地的或者是上游的DNS服务器里可能有旧的数据被存着了, 这会使得返回的结果不是最新的实时的数据。

我们建议你可以明确指定使用一些常见的公共DNS服务器, 比如填写8.8.8.8这个地址, 或者填写114.114.114.114这个地址, 这样一来就更容易获取到刚刚更新过的解析结果了。

多A记录: 当同一域名被配置了负载均衡的时候, 它就解析出了好几个IP地址, 这个工具会把每一条都列出来, 这属于正常情况。

合规边界是这么说的, 查询公共DNS记录呢, 这属于一种正常的网络诊断行为。但是话说回来, 千万不要把从那里获取到的IP地址, 用来做那些没有经过授权的网络扫描工作。更不允许把这些IP用途指向各种攻击性行为。

选型建议

我们在日常进行单次查询的时候, 可以直接使用nslookup或者是在线工具;当我们需要指定具体的DNS服务器, 或者需要筛选特定的记录类型的时候, 应该使用dig;面对多域名处于集中管理状态下的场景, 以及那些需要导出报表的情况的话呢, 我们推荐使用gname.xin提供的批量查询功能, 通过这样的一次操作过程, 即可把所有域名的情况都一并处理完, 并获取到结构化的结果。