IP - - [时间] "GET / …" "UA" 整行日志
| # | IP | PTR 主机名 | UA 声明 | 正向解析 | 结论 |
|---|
判断一个访问是不是真的来自搜索引擎,最常见的做法是看 User-Agent——但这是最不可靠的做法:UA 就是一段客户端自己填的字符串,用 curl -A "Baiduspider" 一行命令就能冒充。真正难伪造的是 IP 的归属,所以主流搜索引擎都提供了官方的验证方法:反向解析 + 正向复核。
做法是这样的:拿访问 IP 去做 PTR 反查,得到一个主机名。如果这个主机名属于搜索引擎自己的域名(例如 crawl-66-249-66-1.googlebot.com),再做一次正向解析,看这个主机名解析回来的 IP 里是否包含原来那个 IP。两步都对上,才能确认"这个 IP 真的是那个搜索引擎的机器"。只做第一步是不够的——任何人都能给自己 IP 配一个看起来像 googlebot.com 的 PTR 记录(实际上不能,因为 PTR 由 IP 所属的网段所有者控制,但如果他控制了那个网段就可以)。
这一页就是把这套流程做成了批量:贴 IP 或整段访问日志,自动提取 IP 与 UA,逐条给出 PTR、正向解析、UA 声明身份与最终结论。整页纯前端——DNS 查询走公共 DoH 接口,浏览器直接请求,不经过本站服务器。
几个诚实的边界:① 没有 PTR 不代表一定是假的,只说明这个 IP 的持有者没配反向解析;② 只有部分搜索引擎(Google、Bing、Baidu、Yandex、Apple)提供可验证的 PTR 域名,360、神马、字节等没有公开规范,只能标注"无法确认";③ 云厂商的出口 IP 会变化,历史结论不保证长期有效。
| 想做什么 | 怎么做 | 说明 |
|---|---|---|
| 日志里看到一堆"百度蜘蛛" | 把整行日志粘进来 | 自动提取 IP 与 UA 一并核对 |
| 怀疑有人在爬站 | 核对 IP 是不是真的搜索引擎 | 伪造的会标「疑似伪造」 |
| 做访问白名单 | 先核验,再把真实 IP 段加白 | 不要只按 UA 放行 |
| 排查 CDN 回源日志 | 批量贴回源 IP | 结果可导出 CSV |
只有提供了官方 PTR 规范的搜索引擎才能验证(Google、Bing、百度、搜狗、Yandex、Apple、DuckDuckGo 等)。360、神马、字节、以及各种 AI 爬虫(GPTBot、ClaudeBot)没有公开的验证域名,只能看 PTR 是否像搜索蜘蛛,不敢下结论。
不一定。PTR 记录由 IP 拥有者自行配置,没配就查不到。搜索引擎的爬虫一般都会配(这是它们官方验证流程的一部分),但通过代理、CDN 回源或云函数出口的请求往往没有 PTR。这种情况只能标「无法确认」,不能直接判假。
PTR 记录属于 IP 所在网段的所有者,普通用户改不了。但如果攻击者自己拥有一段 IP,就可以给自己的 IP 配上 crawl-xx.googlebot.com 这样的名字——这时严格模式的正向复核会失败(那个名字解析不到他的 IP),所以结论是「疑似伪造」。这也是不能只看 PTR 的原因。
可以。IPv6 会先展开成完整地址再转成 ip6.arpa 形式做反查。不过目前多数搜索引擎爬虫仍以 IPv4 为主。
差异通常来自两处:一是它们可能只查了 PTR 没做正向复核;二是 DNS 有缓存,PTR 变更后各地解析结果可能不同。这一页每次都实时查询,不做本地缓存。
这个工具不需要把数据上传到本站服务器:你输入的内容只在浏览器里处理,我们不会保存或记录你的任何输入。
你的查询内容不会被本站留存。
用手机相机扫描二维码,即可继续使用该工具
遇到问题或有好建议?告诉我们。