识别百度搜索引擎蜘蛛UA和IP段只需两步
之前有说过《360 搜索引擎蜘蛛 IP 段以及 user-agent 识别》,本章主要针对如何正确识别百度搜索引擎蜘蛛 UA 和 IP 段,最新很多站长因第三方恶意冒充百度蜘蛛频繁抓取网站,导致网站服务器长期 chu'yu 百度蜘蛛来的太频繁服务器抓爆了!
还有很多站点想得到百度蜘蛛的 IP 段,想把 IP 加入白名单,但 IP 地址范围动态变化不固定,我们无法对外公布。那么如何才能识别正确的百度蜘蛛呢?本文带你轻松两步正确识别百度蜘蛛的 UA 和 IP 段:
识别百度蜘蛛 UA 和 IP
百度蜘蛛 UA
如果百度蜘蛛 UA 信息不对,可以直接判断为非百度搜索的蜘蛛。目前百度搜索引擎蜘蛛 UA 分为移动、PC、和小程序三个应用场景,这三个渠道 UA 分别如下:
百度移动爬虫 UA:
Mozilla/5.0(Linux;u;Android 4.2.2;zh-cn;) AppleWebKit/534.46 (KHTML,like Gecko)Version/5.1 Mobile Safari/10600.6.3 (compatible; Baiduspider/2.0;+http://www.baidu.com/search/spider.html)
或
Mozilla/5.0 (iPhone;CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko)Version/9.0 Mobile/13B143 Safari/601.1 (compatible; Baiduspider-render/2.0;+http://www.baidu.com/search/spider.html)
百度 PC 爬虫 UA:
Mozilla/5.0(compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)
或
Mozilla/5.0(compatible; Baiduspider-render/2.0; +http://www.baidu.com/search/spider.html)
百度小程序UA:
Mozilla/5.0 (iPhone;CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko)Version/9.0 Mobile/13B143 Safari/601.1 (compatible; Baiduspider-render/2.0;Smartapp; +http://www.baidu.com/search/spider.html)
双向 DNS 解析百度蜘蛛 IP
1、DNS 反查百度蜘蛛 IP
开发者通过对日志中访问服务器的 IP 地址运行反向 DNS 查找,判断某只 spider 是否来自百度搜索引擎,Baiduspider 的 hostname 以*.baidu.com或*.baidu.jp 的格式命名,非*.baidu.com 或*.baidu.jp 即为冒充。
根据平台不同验证方法不同,如 linux/windows/macos 三种平台下的验证方法分别如下:
- 在 linux 平台下,您可以使用 host ip 命令反解 ip 来判断是否来自 Baiduspider 的抓取。
- 在 windows 平台或者 IBM OS/2 平台下,您可以使用 nslookup ip 命令反解 ip 来 判断是否来自 Baiduspider 的抓取。打开命令处理器 输入 nslookup xxx.xxx.xxx.xxx(IP 地址)就能解析 ip,来判断是否来自 Baiduspider 的抓取。
- 在 macos 平台下,您可以使用 dig 命令反解 ip 来判断是否来自 Baiduspider 的抓取。打开命令处理器输入 dig -x xxx.xxx.xxx.xxx(IP 地址)就能解析 ip,来判断是否来自 Baiduspider 的抓取。
2、对域名运行正向 DNS 查找
对第一步中通过命令检索到的域名运行正向 DNS 查找,验证该域名与您日志中访问服务器的原始 IP 地址是否一致,IP 地址一致可确认 spider 来自百度搜索引擎,IP 地址不一致即为冒充。
示例:
> host 111.206.198.69
69.198.206.111. in-addr.arpa domain name pointer baiduspider-111-206-198-69.crawl.baidu.com.
> host baiduspider-111-206-198-69.crawl.baidu.com
baiduspider-111-206-198-69.crawl.baidu.com has address 111.206.198.69