IP反查域名这个操作, 意思就是通过IP地址去查出来它上面绑的那些域名或者主机名到底有哪些, 这事情在网络安全排查里面是基础的操作, 同时在运维那边出现毛病要定位问题和域名管理的时候, 也是基础的操作, 本文现在列出了当前社会上主流用的那些IP反查域名的方法和工具, 并且给出了完整的操作步骤, 以此来帮助读者朋友们能够一次性就把查询这件事情给完成好。
基本原理
IP反查域名这件事, 它的本质其实就是去执行DNS的反向解析, 而这一操作的具体表现是去查询特定的PTR记录。如果某个DNS服务器里面已经配置好了对应那个IP地址的PTR记录信息的话, 系统就会把这个IP所绑定的那个域名给返回出来。
可要是该服务器里面压根就没有配置任何关于PTR记录的内容的话, 那就没办法通过常规的那套标准DNS查询手段拿到相关的结果信息了。在面对这种没有配置记录的棘手情况时, 我们就只能退而求其次, 去借助一些第三方的测绘数据资源来进行查找,或者也可以利用云厂商所提供的控制台功能来辅助完成定位操作。
使用nslookup或dig命令(推荐)
操作步骤:
1. 启动终端ip反查域名, 如果你使用的是Windows系统, 那么对应的工具是CMD, 如果你在Linux或者Mac系统上工作, 那你应该打开的是Terminal。
2. 输入命令:nslookup <目标IP> 或 dig -x <目标IP>。
3. 请查看返回结果里面的那个“PTR record”字段, 又或者去查找“answer”这个字段, 它们所指向的内容, 也就是对应的域名啦。
运行nslookup 8.8.8.8命令以后, 系统会返回dns.google这个结果。这种方式是直接去查询 DNS 的信息的, 出来的结果是最精确的, 同时速度也快。
使用在线IP查询平台
操作步骤:
1. 用户可以去浏览器里头打开那个IP查询的网站, 像什么ip138啦, 或者ip.cn这样的, 就是这些。
2. 现在你可以通过在搜索框中输入目标IP地址的方式来进行操作。
3. 当你访问该页面的时候, 它会显示出这个IP地址所在的地理位置, 还有提供网络服务的运营商的信息, 以及其他一些已知的域名与这个IP地址绑定在一起的记录。
需要留意的是, 在线平台的数据来源包括DNS PTR记录以及第三方测绘数据库这类东西, 因为更新的频率是比较有限的, 所以产生的结果仅仅是一个参考, 不应该把它当成唯一的根据。
通过域名解析记录逆向确认
如果目标是一个服务器的IP地址, 并且对应的PTR记录没有配置好, 那么你可以尝试下面提到的这些方法:
1. 请登录gname.xin, 以及其他的相关域名注册管理后台。然后在DNS解析设置中去做检查。看看这个IP地址有没有出现在A记录里面。同时也看看它有没有出现在AAAA记录里面。
2. 你可以尝试使用那个叫作dig的命令行工具, 对目标域名发起一次查询, 专门去查找其对应的A记录, 这样一来就能够通过逆向的方式, 最终确认到该IP地址究竟是属于哪 one家的了, 具体的操作示例可以参考下面这种写法: dig A example.com | grep"目标IP"。
注意事项与常见局限
只有公网IP能够被反向查询, 由于内网地址包括192.168.x.x、10.x.x.x以及172.16-31.x.x, 这些地址没有公网PTR记录, 所以无法直接反向查询。
云服务商, 像是阿里云、腾讯云还有AWS这些公司, 它们搞的弹性IP这个东西, 通常是不会去配置那个什么PTR记录的, 所以你如果想要看某一个IP是属于哪个实例的时候, 你得去对应的那个云厂商的控制台里去看看。
一个互联网协议地址可能和多个域名建立联系, 这种情况出现在虚拟主机的场景里。另一方面, 多个互联网协议地址也有可能共享同一个域名, 这是在内容分发网络场景下出现的现象。具体的处理结果必须结合起来看,依据业务的实际情况来作出判断。
查询出来的结果不是随时都准确的ip反查域名, 也就是带有时间性的。IP地址和域名之间的对应关系会随着实际业务的变化而发生改变。所以建议大家进行多次查询, 并且要从多个不同的渠道相互对照验证。
关于IP反查域名的事情, 建议你可以优先选择使用nslookup这个命令或者dig这个命令去做精确的查询操作, 同时可以辅以利用那些现成的在线平台以及域名管理的后台来获取一些补充性的信息内容, 这样做的话就能够覆盖掉绝大多数的排查场景。

