Проверка SPF-записи домена онлайнПроверка SPF-записи
Раскрывает SPF-запись домена вместе со всеми include, считает DNS-запросы и показывает ошибки, из-за которых письма попадают в спам.
Что смотрит проверка
- SPF-запись домена (TXT)
- Всё дерево include и redirect
- Лимиты: 10 DNS-запросов и 2 пустых
- Квалификатор all, ptr и синтаксис
- Незарегистрированные домены в include (RDAP)
Что читает и чего не делает
Читается только DNS: TXT-запись домена, TXT-записи всех доменов из include и redirect и статус регистрации доменов из include (RDAP). Письма не отправляются, к почтовому серверу мы не подключаемся.
Что такое SPF-запись?
SPF (Sender Policy Framework) — TXT-запись в DNS со списком серверов, которым разрешено отправлять почту от имени вашего домена. Сервер получателя сверяет IP отправителя с этим списком. Запись может подключать списки других провайдеров через include, но на её проверку уходит не больше 10 DNS-запросов. Если лимит превышен, запись считается недействительной и письма не проходят проверку.
Читается только DNS: TXT-запись домена, TXT-записи всех доменов из include и redirect и статус регистрации доменов из include (RDAP). Письма не отправляются, к почтовому серверу мы не подключаемся.
Как читать результат
- DNS-запросы (не больше 10)
- include, a, mx, ptr, exists и redirect тратят по одному запросу, и такие же механизмы внутри подключённых записей тоже считаются. ip4 и ip6 запросов не тратят.
- Пустые запросы (не больше 2)
- Запрос, на который пришёл пустой ответ: например, include провайдера, чью запись уже удалили. Больше двух — запись недействительна.
- -all
- Письма с серверов не из списка отклоняются. Вместе с DMARC это самая строгая настройка.
- ~all
- Письма с серверов не из списка помечаются подозрительными, но не отклоняются. Если политика DMARC — reject, на практике этого достаточно.
- ?all и +all
- ?all ничего не сообщает, +all разрешает отправлять от вашего имени кому угодно. Оба варианта делают SPF бесполезным.
Частые ошибки и как их исправить
Всё, что может отметить проверка: чем это опасно и что поменять в DNS.
Нет SPF-записи
Почему это важно: Получатели не знают, каким серверам можно слать почту от вашего имени, и поддельные письма проходят легче. С февраля 2024 г. Google и Yahoo требуют от всех отправителей SPF или DKIM.
Что сделать: Добавьте в корень домена одну TXT-запись. Используйте значение include, которое даёт ваш почтовый провайдер, и закончите запись на -all или ~all.
example.ru. TXT "v=spf1 redirect=_spf.yandex.net"Несколько SPF-записей
Почему это важно: По RFC 7208 у домена может быть только одна SPF-запись. Если их две, получатель выдаёт постоянную ошибку и игнорирует обе.
Что сделать: Объедините их в одну: все include и ip4/ip6 перенесите в одну запись v=spf1, вторую удалите.
; одна запись вместо двухexample.ru. TXT "v=spf1 include:_spf.yandex.net include:spf.unisender.com ~all"Превышен лимит в 10 DNS-запросов
Почему это важно: При превышении получатели возвращают постоянную ошибку (permerror). Для DMARC это значит, что SPF не пройден, и письма могут уйти в спам.
Что сделать: Уберите include сервисов, которыми больше не пользуетесь. Удалите лишние a и mx, а серверы с постоянным IP пропишите через ip4/ip6 — они запросов не тратят. Ещё вариант — вынести массовые рассылки на поддомен (news.example.ru) со своей SPF-записью.
include без SPF-записи
Почему это важно: Подключить через include домен без SPF-записи — постоянная ошибка. Обычно это след сервиса, от которого отказались.
Что сделать: Удалите этот include. Если сервисом пользуетесь, запросите у провайдера актуальное значение SPF.
Незарегистрированный домен в include
Почему это важно: Купить этот домен сегодня может кто угодно. Новый владелец пропишет в его SPF любые серверы и будет слать от вашего имени письма, проходящие SPF.
Что сделать: Немедленно удалите этот include. Если домен ваш и он истёк — продлите.
+all разрешает всех
Почему это важно: +all разрешает любому серверу в мире отправлять почту от вашего имени. Это не лучше, чем отсутствие SPF-записи.
Что сделать: Замените +all на -all или ~all.
example.ru. TXT "v=spf1 include:_spf.yandex.net -all"~all — мягкий отказ
Почему это важно: Письма с серверов не из списка помечаются подозрительными, но не отклоняются. При политике DMARC reject это обычная и допустимая настройка.
Что сделать: Если все ваши отправители перечислены, можно перейти на -all. Настоящую защиту даёт DMARC p=reject.
Механизм ptr
Почему это важно: RFC 7208 не рекомендует ptr: он медленный, тратит много запросов, и часть получателей его игнорирует.
Что сделать: Уберите ptr и пропишите серверы через ip4/ip6 или include.
Частые вопросы
- Как проверить SPF-запись домена?
- Введите домен в поле выше. Проверка читает TXT-запись, которая начинается с v=spf1, раскрывает все подключённые домены и считает DNS-запросы. В командной строке dig TXT example.ru покажет только первый уровень, а пройти цепочку и посчитать запросы вручную сложно.
- Как считается лимит в 10 DNS-запросов?
- include, a, mx, ptr, exists и redirect — по одному запросу, плюс такие же механизмы внутри каждой подключённой записи. ip4, ip6 и all не считаются. Яндекс 360 и Google Workspace тратят по одному запросу, некоторые сервисы рассылок — три-четыре.
- Что выбрать: ~all или -all?
- При политике DMARC p=reject работают оба варианта, а ~all снижает риск потерять нужное письмо из-за неправильно настроенной пересылки. Если DMARC нет или стоит p=none, -all даёт более чёткий сигнал. +all и ?all не используйте никогда.
- У меня два почтовых сервиса. Нужны две SPF-записи?
- Нет. У домена одна SPF-запись. Пропишите оба include в ней: v=spf1 include:первый include:второй ~all.
Первоисточники
Другие быстрые проверки
Каждая отвечает на один вопрос об одной записи. Регистрация не нужна.
Проверка DKIM
Находит ключ подписи DKIM в DNS, определяет тип и длину и отмечает ключи — слабые, оставленные в тестовом режиме или отозванные.
Проверка DMARC
Разбирает DMARC-запись по тегам: что будет с поддельными письмами, куда уходят отчёты и разрешены ли внешние адреса для отчётов.
Проверка MX-записей
Показывает, на какие серверы доставляется почта вашего домена, в порядке приоритета — с адресом, обратной зоной и провайдером каждого.
Проверка доступности сайта
Пробует открыть сайт из двух разных точек и говорит, лежит ли он у всех или проблема только в вашем подключении.
Проверка срока SSL
Показывает, когда истекает сертификат, сколько дней осталось и кто его выпустил. Основной домен и www проверяются отдельно, напоминание можно добавить в календарь.
Чтобы увидеть все проверки в одном отчёте:Проверка безопасности почты