User-Agent нельзя считать надежным доказательством подлинности Googlebot. Эту строку легко подделать. Для проверки поискового робота необходимо выполнить обратный DNS-запрос для IP-адреса из access.log, проверить доменное имя и затем сделать прямой DNS-запрос, чтобы убедиться, что домен снова указывает на исходный IP.
Почему нельзя доверять только User-Agent
Парсер может отправить запрос с той же строкой User-Agent, которую использует официальный поисковый робот. Простая проверка текста заголовка не подтверждает принадлежность IP-адреса Google и не защищает сайт от скрапинга.
Как работает подмена User-Agent
Скрипт отправляет HTTP-запрос со строкой, похожей на официальный User-Agent Googlebot.
Базовый фильтр распознает знакомую сигнатуру и пропускает запрос.
Парсер последовательно загружает страницы сайта или каталога.
При высокой интенсивности запросов возрастает нагрузка на веб-сервер и приложение.
Как проверить Googlebot через обратный и прямой DNS
Проверка состоит из двух этапов: сначала IP-адрес преобразуют в доменное имя с помощью обратного DNS-запроса, затем полученное имя преобразуют обратно в IP-адрес. Результат должен совпасть с исходным адресом из серверного лога.
Пошаговая проверка rDNS и fDNS
Найдите в access.log подозрительную запись с User-Agent Googlebot и скопируйте IP-адрес клиента.
Выполните обратный DNS-запрос командой
host IP_АДРЕС
или
nslookup IP_АДРЕС
.
Проверьте, что полученное доменное имя оканчивается на
googlebot.com
,
google.com
или другой официальный домен, указанный Google для соответствующего типа краулера.
Выполните прямой DNS-запрос для полученного доменного имени.
Сравните возвращенный IP-адрес с исходным адресом из access.log. Совпадение обоих адресов подтверждает корректность прямой и обратной DNS-связки.
Сравнение поведения Googlebot и подозрительного парсера
Поведение в логах помогает выявить аномалии, но само по себе не заменяет DNS-проверку. Интенсивность обхода, типы запрашиваемых ресурсов и последовательность URL зависят от структуры сайта, настроек сервера и текущей активности поисковой системы.
ПризнакОфициальный поисковый роботПодозрительный краулерПодлинность IPПодтверждается прямым и обратным DNS-запросомDNS-проверка не подтверждает принадлежность заявленному поисковикуЧастота запросовОбычно меняется с учетом скорости ответов сайтаМожет сохранять высокую частоту независимо от нагрузки и ошибокПоследовательность URLОбход зависит от внутренних ссылок, карты сайта и приоритетов индексированияЧасто заметен линейный перебор ID, страниц пагинации или карточек каталогаСетевой источникСоответствует официальной инфраструктуре поисковой системыМожет принадлежать стороннему хостингу, VPN, прокси или неизвестной сети
Как найти IP-адреса с User-Agent Googlebot
Для первичной выборки можно найти все записи с упоминанием Googlebot и подсчитать количество запросов по каждому IP-адресу:
grep "Googlebot" /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -n 20
Команда показывает наиболее активные IP-адреса, использующие строку Googlebot. Каждый найденный адрес необходимо отдельно проверить через прямой и обратный DNS.
Дополнительная проверка сети и ASN
Информация об автономной системе помогает понять, какой организации принадлежит сеть IP-адреса. Однако ASN следует использовать только как дополнительный признак: окончательное решение нельзя принимать исключительно по названию хостинга или провайдера.
Что делать с неподтвержденным ботом
Сохраните примеры запросов, IP-адреса, User-Agent и время активности.
Проверьте адреса через прямой и обратный DNS.
Настройте ограничение частоты запросов для подозрительных клиентов.
Используйте WAF, антибот-фильтр или правила веб-сервера для временной блокировки.
Следите за кодами ответов, загрузкой CPU, памятью и временем ответа после применения правил.
Частый вопрос
Как по поведению отличить Googlebot от парсера?
Поведенческие признаки позволяют выделить подозрительный трафик, но не подтверждают личность робота. Надежная проверка должна включать сопоставление исходного IP-адреса с результатами обратного и прямого DNS-запросов.
Комментарии
Оставить комментарий
Пока нет комментариев. Будьте первым!