DuckDuckBot — поисковый робот DuckDuckGo для построения индекса приватного поиска без профилирования пользователей. Оператор: DuckDuckGo. Ниже — факты из публичной документации и практики верификации: полный UA, IP/ASN, robots.txt, с кем не путать и как настроить правила так, чтобы не отрезать соседний полезный агент. Важный нюанс, о котором редко пишут: DuckDuckGo в основном берёт результаты поиска у партнёров вроде Bing, а не строит полностью независимый индекс силами одного DuckDuckBot. Прямая роль этого краулера скромнее, чем можно подумать, — в первую очередь это точечные задачи вроде получения favicon и дополнения уже существующих результатов, а не масштабный самостоятельный обход всего веба.
Что такое DuckDuckBot
| Параметр | Значение |
|---|---|
| User-Agent (токен) | duckduckbot |
| Полная / типовая строка UA | DuckDuckBot/1.1; (+http://duckduckgo.com/duckduckbot.html) — обратите внимание, что указанный в строке URL фактически не существует; актуальная справка находится по другому адресу на duckduckgo.com |
| Исторический вариант | DuckDuckGo-Favicons-Bot/1.0 — узкоспециализированный предшественник, встречавшийся в логах и запрашивавший преимущественно landing-страницу и favicon.ico |
| Оператор | DuckDuckGo |
| Назначение | Дополняет и актуализирует результаты приватного поиска DuckDuckGo Search прямым краулингом — в первую очередь favicon и точечные индексные задачи, а не построение полного независимого индекса |
| Официальная документация | duckduckgo.com/duckduckgo-help-pages/results/duckduckbot |
| IP / верификация | ✅ Официальный feed: duckduckgo.com/duckduckbot.json. Есть отдельный DuckAssistBot: duckduckgo.com/duckassistbot.json |
| ASN (ориентир) | Не зафиксирован публично; исторически наблюдалась инфраструктура на базе Amazon AWS |
| Соблюдение robots.txt | Да (официально / по документации). Изменения в robots.txt для семьи DuckDuckGo вступают в силу примерно через 72 часа — не мгновенно |
| Контакт по проблемам opt-out | crawling@duckduckgo.com |
| Категория TrafficVeil | Поисковые роботы |
Реальный скепсис вебмастеров по поводу IP
В открытом обсуждении на форуме вебмастеров один из опытных участников описывал случай, когда запросы, представляющиеся DuckDuckBot, не совпадали с официально опубликованным списком IP того времени — источник прямо усомнился, делает ли бот вообще что-то заметное сверх сбора favicon, учитывая скромное количество реальных запросов robots.txt за длительный период наблюдения. Это не повод считать DuckDuckBot скомпрометированным, но хороший аргумент в пользу того, чтобы не полагаться только на строку UA — сверяйте IP с актуальным JSON, а не доверяйте свежести списка бесконечно.
Как работает и зачем приходит
Для видимости в DDG — Allow; IP сверять по JSON. Учитывая ограниченный объём прямого краулинга, не ожидайте от DuckDuckBot такой же интенсивности обхода, как у Googlebot или YandexBot, — небольшой, но стабильный объём точечных запросов (в том числе favicon) — нормальное поведение для этого бота.
Подключите домен и посмотрите живую ленту: кто пришёл, с какой сети, что запрашивал и по какому правилу был пропущен или заблокирован.
Нагрузка на сервер
По сводке TrafficVeil (bots-summary, март–июнь 2026, июнь по 14.06) duckduckbot: 132 517 запросов (март 8 003, апрель 30 509, май 78 448, июнь 15 557). Перед жёсткими правилами сверьте июль–август в аналитике TrafficVeil. Смотрите не только RPS, но и path-паттерн: плотный обход каталога без сессий — повод для rate-limit/deny; точечные хиты под favicon/превью — другая, ожидаемая для этого бота политика.
Обнаружение в логах и IP
grep -i "duckduckbot" /var/log/nginx/access.log
grep -i "duckduckbot" /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head
grep -i "duckduckbot" /var/log/nginx/access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head
IP="1.2.3.4"
whois -h whois.cymru.com " -v $IP"
dig +short -x "$IP"
# Актуальные IP (официальный JSON)
curl -s "https://duckduckgo.com/duckduckbot.json" | head
Важно: официальный JSON с IP есть, плюс отдельный DuckAssistBot: duckduckgo.com/duckassistbot.json. User-Agent легко подделать — для allow/deny связка UA + IP/ASN/официальный JSON надёжнее одной строки UA, тем более что в самой строке UA указана нерабочая ссылка на справку.
robots.txt
User-agent: duckduckbot
Disallow: /
User-agent: duckduckbot
Allow: /
User-agent: duckduckbot
Disallow: /admin/
Disallow: /cart/
Allow: /
Соблюдает robots.txt, но помните про задержку применения около 72 часов. Если в семействе есть «полезный» и «нежелательный» агент — делайте отдельные User-agent блоки и не режьте обоих одним ASN-баном.
Nginx / Apache / TrafficVeil
Nginx
if ($http_user_agent ~* "duckduckbot") {
return 403;
}
Apache
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} duckduckbot [NC]
RewriteRule ^ - [F,L]
TrafficVeil
- Найдите duckduckbot в ботах домена или /system/bots
- Для видимости в DDG — Allow; IP сверять по JSON
- После изменения сверьте логи за 15–60 минут; но учитывайте, что для самой директивы robots.txt применение занимает до 72 часов
Рекомендации
- Для видимости в DDG — Allow; IP сверять по JSON
- Не полагайтесь только на robots.txt, если compliance неоднозначный или агент user-initiated
- Не баньте весь ASN оператора, если в семье есть нужный бот (превью/поиск)
- Обновляйте IP JSON (если есть) по cron — диапазоны меняются
- Сверяйте свежую статистику TrafficVeil, не только сводку март–июнь 2026
- При проблемах с opt-out пишите на crawling@duckduckgo.com, а не только меняйте robots.txt и ждите
С кем не путать
| Бот | Роль | Комментарий |
|---|---|---|
| DuckAssistBot | AI-assist сценарии DuckDuckGo | семья DuckDuckGo; отдельный официальный JSON IP и своя страница opt-out |
| DuckDuckGo-Favicons-Bot | Исторический узкоспециализированный предшественник | семья DuckDuckGo; фокус на favicon, а не на общем индексировании |
Стратегия
| Цель | Действие |
|---|---|
| Нужна польза от оператора | Allow + точечные Disallow служебных путей |
| Бот только грузит сервер / забирает данные | Disallow + deny в TrafficVeil / nginx |
| Есть официальный IP JSON | UA + IP verification / WAF IP set |
| Официального IP нет | UA + ASN/rDNS + поведение; не слепой ASN-ban семьи |
Частые вопросы
Строит ли DuckDuckBot полностью независимый поисковый индекс?
Что за токен DuckDuckGo-Favicons-Bot встречается в старых логах?
Работает ли ссылка на справку прямо в официальной строке UA DuckDuckBot?
Сколько времени применяются изменения в robots.txt для семьи DuckDuckGo?
Куда обращаться, если возникли проблемы с opt-out от краулинга DuckDuckGo?
Достаточно ли одной строки UA для верификации DuckDuckBot?
Команда TrafficVeil разрабатывает инструменты защиты сайтов от ботов, DDoS и веб-атак. Разборы ботов пишем по логам подключённых доменов и открытым данным операторов.