В Інтернеті є проблема дикої природи. Під поверхнею діяльності людського користування існує цілий екосистема автоматизованих програм, які сканують, скребут, досліджують та запитують веб-сторінки у величезному масштабі. Деякі з цих ботів корисні. Crawler Google індексує сторінки, щоб вони з'являлися у результатах пошуку. Crawler Bing робить те саме для пошукової системи Microsoft. Crawler OpenAI збирає навчальні дані для мовних моделей. Ці законні crawlers чесно визначають себе, дотримуються правил, вказаних у файлах robots.txt, і працюють із відомої інфраструктури. Але за кожним законним crawler стоїть десятки самозванців, які носять те саме ім'я, але роблять щось абсолютно інше. Вони представляються як Googlebot у своїй строці user agent, претендують на індексування сторінок для пошуку й покладаються на той факт, що більшість веб-серверів нададуть їм переважне трактування на основі цієї заявленої ідентичності. Зоологія цих інтернет-ботів настільки ж складна, конкурентна та іноді дивна, як будь-який біологічний екосистем.

Розуміння цього екосистему важливо для кожного, хто керує веб-сайтом, оскільки рішення довіряти або блокувати бота має прямі наслідки. Блокування справжнього crawler пошукової системи означає, що сторінки перестають з'являтися у результатах пошуку. Довіра до поддельного означає дозвіл на скребок, інструмент конкурентної розвідки або зловмисника на споживання ресурсів сервера, видаючи себе за того, хто надає цінність. Здатність розрізняти справжніх та поддельних crawlers - це не теоретична вправа у безпеці. Це практична необхідність, яка впливає на витрати на пропускну здатність, продуктивність сервера, точність аналітики та захист контенту. API виявлення ботів існує саме для цієї мети, надаючи остаточну перевірку ідентичності crawler на основі одного, що не може бути підроблено: мережевої інфраструктури, з якої бот підключається.

Види Поддельного Googlebot

Googlebot - це найбільш контрольований crawler в Інтернеті, і причини очевидні. Веб-сайти регулярно надають Googlebot спеціальні привілеї. Обмеження швидкості послаблені. Paywall знімаються. Контент, який сховано за JavaScript рендеруванням, попередньо рендерується спеціально для crawler Google. Правила Robots.txt часто явно дозволяють доступ Googlebot до розділів, обмежених для інших crawlers. Претендуючи на те, щоб бути Googlebot, поддельний crawler успадковує всі ці привілеї без їх заробітку. Веб-сайт подає найкращий контент, найшвидші відповіді та найповніші сторінки тому, кого вважає індексуванням інфраструктури Google, коли насправді отримувачем є скребок, що працює з орендованого сервера в центрі даних.

Справжній Googlebot можна ідентифікувати з абсолютною впевненістю. Він працює виключно з IP-адрес в межах автономної системи Google, AS15169. Зворотний пошук DNS на будь-якій справжній IP-адресі Googlebot повертає ім'я хоста, що закінчується на googlebot.com або google.com. Прямий пошук DNS на цьому хостимені розв'язується назад до оригінальної IP-адреси. Цей трьохетапний ланцюг перевірки, від IP до хоста до IP, криптографічно пов'язаний із інфраструктурою DNS Google і не може бути підроблено без компрометації DNS серверів Google, що практично неможливо. Google bot detector виконує цей точний ланцюг перевірки та повертає остаточний результат.

Поддельний Googlebot, навпаки, походить із загальноцільової хмарної інфраструктури, яку кожен може орендувати за годину. Amazon Web Services, Google Cloud Platform (з гумором), Microsoft Azure, DigitalOcean, Hetzner, OVH та Contabo - звичайне походження. Строка user agent копіюється дослівно від справжнього Googlebot, часто включаючи номер версії та формат URL crawl. Деякі складні підробки навіть імітують шаблони запитів Googlebot, розташовуючи свої запити та слідуючи посиланнями у моделі, яка нагадує законне сканування. Але IP-адреса їх видає щоразу. Ніяка поведінкова імітація не може змінити той факт, що запит походить від AS16509 (Amazon) замість AS15169 (Google).

Bingbot та його Самозванці

Bingbot Microsoft - це другий найчастіше контрольований crawler, і його перевірка слідує подібній схемі до Googlebot, але з деякими важливими відмінностями. Справжній Bingbot працює на інфраструктурі Microsoft, і його IP-адреси розв'язуються через зворотний DNS до имен хостів в межах домену search.msn.com. Перевірка ASN перевіряє проти автономних систем Microsoft, які включають кілька ASN через обширну мережеву інфраструктуру компанії. Перевірка однаково надійна, але вимагає знання про ширше розподілення IP Microsoft порівняно із більш консолідованим діапазоном Google.

Поддельний Bingbot служить багатьом цілям як поддельний Googlebot, але з'являється у дещо менших обсягах, відбиваючи меншу частку ринку Bing та відповідно менший стимул видавати себе за нього. Проте веб-сайти, які спеціально оптимізуються для Bing або які подають різний контент до Bingbot, привертають непропорційне контрольоване видання. SEO інструменти, які аналізують, як сторінка виглядає для crawler Bing, часто використовують поддельних user agents Bingbot для отримання версії сторінки, призначеної для Bing. Служби конкурентної розвідки роблять те саме, щоб побачити, який контент конкуренти подають спеціально до інфраструктури пошуку Microsoft.

Методологія виявлення ідентична за принципом. Перевірте IP-адресу проти відомих діапазонів Microsoft. Виконайте зворотну та прямий пошук DNS. Підтвердьте, що ASN збігається. Запит, який претендує на те, щоб бути Bingbot, що походить із сервера Hetzner у Фінляндії, без сумніву поддельний, незалежно від того, наскільки переконливо розроблено строка user agent. API виявлення ботів автоматично обробляє цю перевірку, перевіряючи заявлену ідентичність проти фактичного походження мережі та повертаючи ясний вердикт.

ChatGPT Crawler та Нова Хвиля ШІ Ботів

Поява великих мовних моделей створила цілком нову категорію веб-crawlers та цілком нову категорію контрольованого видання. GPTBot OpenAI сканує Веб для збору тренувальних даних, і його присутність стала однією з найбільш суперечливих тем у веб-виданні. Багато видавців хочуть блокувати GPTBot, щоб запобігти використанню їхнього контенту для навчання ШІ. Інші хочуть дозволити його, сподіваючись на сприятливе ставлення у відповідях ChatGPT. У будь-якому випадку, здатність розрізняти справжній GPTBot від поддельних версій критична для застосування будь-якої політики, яку вибрав видавець.

Справжній GPTBot, як справжній Googlebot, працює з визначеного набору IP-адрес, пов'язаних із інфраструктурою OpenAI. Строка user agent чітко ідентифікує себе, а діапазони IP опубліковані та перевірювані. Поддельний GPTBot, який швидко розповсюджувався з запуску ChatGPT, використовує ту саму строку user agent, але підключається з неспорідненої інфраструктури. Мотиви для контрольованого видання GPTBot різні. Деякі скребки використовують його, тому що видавці, які вирішили дозволити crawlers навчання ШІ, без обмежень подають контент будь-чому, що претендує на те, щоб бути GPTBot. Інші використовують його як загальну ідентичність прикриття, покладаючись на припущення, що системні адміністратори менше знайомі з діапазонами IP OpenAI, ніж з Google, і тому менш вірогідні перевірити цю заяву. OpenAI crawler detector безпосередньо вирішує це, перевіряючи, чи запит GPTBot насправді походить із мережі OpenAI.

За межами GPTBot, пейзаж ШІ crawler швидко розширюється. Anthropic, Perplexity, Meta та численні менші компанії ШІ керують веб-crawlers із різним ступенем прозорості щодо їхної діяльності. Кожен із цих crawlers може бути контрольованим видавцем, і кожне контрольоване видання несе свої власні наслідки залежно від того, як цільовий сайт ставиться до цього конкретного crawler. Сайт, який блокує всіх ШІ crawlers окрім GPTBot, наприклад, створює сильний стимул для скребків на контрольоване видання GPTBot конкретно, тому що це єдина ідентичність, яка буде подана контент без обмежень.

Менші Гравці та Довгий Хвіст Контрольованого видання Ботів

Екосистема ботів простягається далеко за межі Google, Bing та OpenAI. Yandex керує значним crawler для російськомовного Вебу, та поддельні боти Yandex поширені на сайтах із російськомовним контентом або які спеціально подають різний контент до Yandex. DuckDuckBot, crawler DuckDuckGo, контрольований видавець попри відносно малу частку ринку DuckDuckGo, тому що сайти, які задовольняють користувачів, свідомих приватності, часто надають DuckDuckBot переважне допускання. Qwant, французька пошукова система, та Seznam, чеська пошукова система, обидва мають crawlers, які контрольуються видавцями в їхніх відповідних регіональних ринках.

Методологія перевірки працює однаково для всіх них. Кожен законний crawler працює з відомого набору IP-адрес, пов'язаних із мережевою інфраструктурою його оператора. ASN визначає мережу. Зворотний DNS підтверджує ім'я хоста. Прямий DNS підтверджує IP. Цей ланцюг перевірки універсальний і застосовується незалежно від конкретного crawler, який перевіряється. Різниця в довідкових даних: які ASN, які шаблони імені хоста та які діапазони IP належать кожному crawler. API виявлення ботів зберігає ці посилові набори даних для восьми основних crawlers та надає перевірку як єдиний виклик API.

Довгий хвіст екосистеми ботів також включає crawlers, які не контрольують нікого взагалі. Це чесні боти. SEO інструменти, такі як Ahrefs, SEMrush та Moz, керують crawlers, які точно ідентифікуються у своїх строках user agent. Служби порівняння цін, académica дослідницькі crawlers, перевірка доступності та валідатори посилань всі оголошують про свою справжню ідентичність. Ці боти можуть не бути бажаними на будь-якому сайті, але принаймні оператор сайту може прийняти обґрунтоване рішення про те, чи дозволити їм. Проблема конкретно із самозванцями, ботами, які брешуть про те, хто вони є, щоб отримати доступ, який вони інакше не отримали б.

Побудова Захисту на Основі Перевірки Ідентичності

Практичний захист від контрольованого видання ботів прямолінійний, як тільки механізм перевірки встановлено. Кожен вхідний запит, який претендує на те, щоб бути із crawler пошукової системи, перевіряється проти відомої інфраструктури crawler. Запити, які проходять перевірку, пропускаються з будь-якими привілеями, які сайт надає цьому crawler. Запити, які не проходять перевірку, або блокуються повністю, або розглядаються як загальний трафік, підлягаючи стандартному обмеженню швидкості та контролю доступу сайту.

Цей підхід кращий за поведінковий аналіз з кількох причин. Поведінковий аналіз намагається визначити, чи є відвідувач ботом на основі того, як він взаємодіє із сайтом: швидкість запиту, шаблони навігації, виконання JavaScript, рухи миші. Ці сигнали шумні, генерують хибні позитивні результати та можуть бути поразені достатньо складними ботами, які імітують людську поведінку. Верифікація на основі IP, навпаки, видає двійковий результат з нулем хибних позитивних. Запит або походить із мережі Google, або ні. Немає неясності, немає порогу для налаштування та немає поведінкової моделі для навчання.

Реалізація не повинна бути синхронною з кожним запитом для сайтів, де затримка є проблемою. Перевірка може виконуватися асинхронно, з результатами кешованими на IP-адресу. Як тільки IP перевіряється як належна до Googlebot, всі наступні запити з цієї IP можуть бути дозволені без повторної перевірки протягом настроюваного періоду. Цей підхід додає незначну затримку до конвеєра запитів, одночасно забезпечуючи комплексний захист від контрольованого видання. Період кешування відбиває компроміс: довше кешування означає менше викликів API, але трохи більше вікна, де раніше перевірена IP теоретично могла змінити власність. На практиці розподілення IP пошукових систем надзвичайно стабільні, та тривалість кешу в двадцять чотири години або більше безпечні для більшості програм.

Результат реалізації перевірки ідентичності на основі ботів є чистішим, більш чесним поглядом на те, що насправді потрапляє на сервер. Справжні crawlers вітаються. Поддельні crawlers викриті та заблоковані. Дані аналітики відображають реальність замість вигадки. Ресурси сервера розподіляються справжнім відвідувачам та законним crawlers замість того, щоб бути витрачені на самозванців. Зоологія інтернет-ботів складна та постійно розвивається, але фундаментальний принцип перевірки за мережевим походженням залишається ефективним незалежно від того, як змінюється екосистема ботів.

Часто Задавані Питання

Як мені перевірити, чи запит дійсно від Googlebot?

Виконайте зворотний пошук DNS на IP-адресу та підтвердьте, що ім'я хоста закінчується на googlebot.com або google.com. Потім виконайте прямий пошук DNS на цьому хостимені та підтвердьте, що він розв'язується назад до тієї ж IP. Крім того, перевірте, що IP належить AS15169, який є автономною системою Google. API виявлення ботів виконує всі ці перевірки в одному виклику.

Чи може бот підробити свою IP-адресу, щоб з'явитися як Googlebot?

IP-адреси не можуть бути підроблені для TCP з'єднань, тому що TCP handshake вимагає двонаправленої комунікації. Бот може тривіально підробити строку user agent, але він не може встановити TCP з'єднання з підробленою вихідною IP. Це причина того, що верифікація на основі IP є остаточною, а ідентифікація на основі user agent - ні.

Що таке ASN та чому це важливо для виявлення ботів?

ASN, або Autonomous System Number, ідентифікує мережу, керовану однією організацією. Мережа Google - це AS15169, Microsoft використовує кілька ASN, а OpenAI має свої позначені діапазони. Перевірка IP бота проти очікуваного ASN негайно виявляє, чи запит походить із інфраструктури заявленої організації або з несорідненого центру даних.

Чи слід мені блокувати всіх ботів, які не пройдуть перевірку?

Блокування ботів, які контролюють конкретні пошукові системи, загалом безпечно та рекомендується. Однак не всі неперевірені боти є зловмисниками. Деякі є законними інструментами, які просто не контролюють crawlers. Ключова відмінність полягає між ботами, які брешуть про свою ідентичність, які слід блокувати, та ботами, які чесно ідентифікуються, які можуть оцінюватися індивідуально.

Наскільки поширене контрольоване видання ботів на типових веб-сайтах?

Поширеність варіюється в залежності від розміру сайту та типу контенту. Сайти з високою авторитетом домену, цінним контентом або великою кількістю сторінок мають тенденцію привертати більше поддельних crawlers. Галузеві дані свідчать, що трафік ботів становить від тридцяти до п'ятидесяти відсотків від усього веб-трафіку в світі, а значна частина цього - це контрольоване видання трафіку, який претендує на те, щоб бути законними crawlers пошукових систем.

Чи впливає блокування поддельних ботів на справжнє індексування пошукової системи?

Ні. Блокування на основі перевірки впливає лише на запити з IP-адрес, які не належать заявленій пошуковій системі. Справжній Googlebot, Bingbot та інші законні crawlers проходять перевірку та продовжують звичайний доступ до сайту. Єдиний вплив - на самозванців.