验证 Googlebot 和其他 Google 抓取工具
您可以验证访问您服务器的网页抓取工具是否确实是 Google 抓取工具,例如 Googlebot。如果您担心自称是 Googlebot 的垃圾内容发布者或其他麻烦制造者在访问您的网站,则会发现该方法非常有用。
Google 抓取工具分为三类:
类型 | 说明 | 反向 DNS 掩码 | IP 范围 |
---|---|---|---|
Googlebot | Google 搜索产品的主要抓取工具。始终遵循 robots.txt 规则。 |
crawl-***-***-***-***.googlebot.com 或
geo-crawl-***-***-***-***.geo.googlebot.com
|
googlebot.json |
特殊情况下的抓取工具 | 执行特定功能的抓取工具(例如 AdsBot),不一定遵循 robots.txt 规则。 | rate-limited-proxy-***-***-***-***.google.com |
special-crawlers.json |
用户触发的抓取器 |
最终用户触发抓取操作的工具和产品功能。例如,Google 网站验证工具会响应用户请求。由于是用户请求的抓取,因此这些抓取器会忽略 robots.txt 规则。
由 Google 控制的抓取工具源自 user-triggered-fetchers-google.json 对象中的 IP,并解析为 google.com 主机名。user-triggered-fetchers.json 对象中的 IP 解析为 gae.googleusercontent.com 主机名。例如,如果 Google Cloud (GCP) 上运行的网站具有需要根据该网站用户的请求提取外部 RSS Feed 的功能,便会使用这些 IP。
|
***-***-***-***.gae.googleusercontent.com 或
google-proxy-***-***-***-***.google.com
|
user-triggered-fetchers.json 和 user-triggered-fetchers-google.json |
验证 Google 抓取工具的方法有两种:
- 手动验证:如果是一次性查找,请使用命令行工具。对于大多数用例,此方法足以满足需求。
- 自动验证:如果是大规模查找,请使用自动解决方案将抓取工具的 IP 地址与已发布的 Googlebot IP 地址列表进行比对。
使用命令行工具
-
使用
host
命令对日志中访问服务器的 IP 地址运行 DNS 反向查找。 -
验证域名是
googlebot.com
、google.com
还是googleusercontent.com
。 -
使用
host
命令对在第 1 步中检索到的域名运行 DNS 正向查找。 - 验证该域名与日志中访问服务器的原始 IP 地址是否一致。
示例 1:
host 66.249.66.1
1.66.249.66.in-addr.arpa domain name pointer crawl-66-249-66-1.googlebot.com.host crawl-66-249-66-1.googlebot.com
crawl-66-249-66-1.googlebot.com has address 66.249.66.1
示例 2:
host 35.247.243.240
240.243.247.35.in-addr.arpa domain name pointer geo-crawl-35-247-243-240.geo.googlebot.com.host geo-crawl-35-247-243-240.geo.googlebot.com
geo-crawl-35-247-243-240.geo.googlebot.com has address 35.247.243.240
示例 3:
host 66.249.90.77
77.90.249.66.in-addr.arpa domain name pointer rate-limited-proxy-66-249-90-77.google.com.host rate-limited-proxy-66-249-90-77.google.com
rate-limited-proxy-66-249-90-77.google.com has address 66.249.90.77
使用自动解决方案
或者,您也可以通过将抓取工具的 IP 地址与 Google 抓取工具和抓取器的 IP 范围列表进行比对,按 IP 地址识别 Googlebot:
对于可借以访问您网站的其他 Google IP 地址(例如通过 Apps 脚本),请将访问 IP 地址与通用 Google IP 地址列表进行比对。请注意,JSON 文件中的 IP 地址以 CIDR 格式表示。