Skip to content
EN
← Все статьи

SPF «too many DNS lookups»: лимит 10, как исправить

Коротко. Спецификация SPF (RFC 7208) разрешает не более 10 DNS-запросов при вычислении записи. Механизмы include, a, mx, ptr и exists каждый расходуют лимит, а вложенные include — рекурсивно. Превышение даёт результат permerror, и SPF перестаёт проходить. Исправляют сокращением include, заменой на ip4 (флаттенинг) и удалением неиспользуемых сервисов.

Почему есть лимит в 10 запросов

Лимит защищает почтовые серверы от чрезмерной нагрузки и DoS-атак через бесконечно вложенные SPF-записи. Каждый DNS-запрос при проверке стоит времени, поэтому RFC жёстко ограничивает их число десятью.

Что расходует лимит

  • include — каждый плюс все запросы внутри подключённой записи.
  • a и mx — по одному запросу (mx ещё разрешает каждое имя).
  • ptr — расходует лимит и не рекомендуется к использованию.
  • exists — один запрос.
  • ip4 / ip6 и all — НЕ расходуют лимит (это статичные данные).

Как посчитать запросы

# Исходная запись с перебором лимита:
dig +short txt example.com
# "v=spf1 include:_spf.google.com include:sendgrid.net include:mailgun.org
#  include:_spf.mailjet.com include:amazonses.com mx a ~all"

# Каждый include раскрывается рекурсивно:
dig +short txt _spf.google.com
# "v=spf1 include:_netblocks.google.com include:_netblocks2.google.com
#  include:_netblocks3.google.com ~all"

Способы исправить

  1. Уберите лишние сервисы. Каждый бывший рассыльщик в SPF — это потраченные запросы.
  2. Замените include на ip4 (флаттенинг). Подставьте реальные подсети сервиса напрямую; ip4 не считается в лимит.
  3. Не используйте ptr — медленный и расходует лимит.
  4. Используйте поддомены для разных потоков рассылки, разнося нагрузку.
  5. Авто-флаттенинг у SPF-провайдеров — динамически держит запись в пределах лимита.
МеханизмСчитается в лимит?Совет
includeДа (рекурсивно)Минимизируйте число
a / mxДаЗаменяйте на ip4 при возможности
ptrДаНе используйте
ip4 / ip6НетПредпочтительный способ флаттенинга
allНетВсегда завершайте запись
Флаттенинг ускоряет проверку, но фиксирует IP вручную: если провайдер сменит подсети, SPF перестанет проходить. Поэтому пересматривайте флэт-записи периодически.
Лимит 10 — это про вложенные DNS-запросы, а не про число IP. Одна запись ip4:203.0.113.0/24 покрывает 256 адресов и стоит ноль запросов.

Как enterno.io помогает

Инструмент /email-check раскрывает все вложенные include вашей SPF-записи, считает фактическое число DNS-запросов и сразу показывает, превышен ли лимит 10 и какой include виноват. Это экономит часы ручного раскручивания цепочек через dig. enterno диагностирует и подсказывает — флаттенинг и правку TXT в зоне выполняет владелец домена. Бесплатно — 48+ инструментов, DNS-проверка и разбор SPF.

Частые вопросы

Что произойдёт при превышении лимита?

SPF вернёт permerror, и проверка считается непройденной. Это может уронить и DMARC-выравнивание по SPF, ухудшив доставляемость.

Считается ли ip4 в лимит 10?

Нет. ip4 и ip6 — статичные данные без DNS-запроса. Именно поэтому флаттенинг через ip4 решает проблему лимита.

Безопасен ли автоматический флаттенинг?

Он удобен, но создаёт зависимость от провайдера, который обновляет подсети. Следите, чтобы запись регулярно синхронизировалась с актуальными IP.

Проверьте лимит: запустите /email-check и посмотрите фактическое число запросов в SPF. См. также синтаксис SPF и почему письма уходят в спам.

Проверьте ваш сайт прямо сейчас

Проверить DNS своего сайта →
Другие статьи: DNS
DNS
Лучшие публичные DNS-серверы 2026: скорость, приватность и фильтрация
21.07.2026 · 7 614 просм.
DNS
Сайт не открывается из-за DNS: 8 причин и решения
15.04.2026 · 636 просм.
DNS
DNS leak: что это, как проверить и устранить
15.04.2026 · 532 просм.
DNS
TTL в DNS: оптимальные значения для каждого типа записи
16.03.2026 · 513 просм.