Проверка SPF и TXT-записей домена

SPF перечисляет серверы, которым разрешено отправлять письма от имени домена. Введите домен — разберём SPF-запись по механизмам, посчитаем DNS-запросы из лимита в десять, покажем политику DMARC и остальные TXT-записи.

Как читать SPF-запись

SPF — обычная TXT-запись, начинающаяся с v=spf1. Дальше идут механизмы: ip4 и ip6 разрешают конкретные адреса, a и mx — адреса самого домена и его почтовых серверов, include подключает список чужого провайдера. Завершает запись all: «-all» отклоняет всё остальное, «~all» помечает как подозрительное, «?all» не значит ничего, а «+all» разрешает отправлять от вашего имени кому угодно.

Лимит в десять DNS-запросов

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

Две SPF-записи — это ошибка

Если у домена опубликованы две записи с v=spf1, получатель не может выбрать одну из них и отбрасывает обе. Так ломается почта после подключения второго сервиса рассылок: вместо новой записи нужно добавить include в существующую.

Зачем здесь DMARC

SPF сам по себе почти ничего не гарантирует: он проверяет технический адрес конверта, а получатель видит поле From. Связывает их DMARC — запись в _dmarc.домен с политикой p=none, quarantine или reject. Поэтому страница показывает политику рядом с SPF: пока стоит p=none, ваши правила никого ни к чему не обязывают.

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

Чем «-all» отличается от «~all»?
«-all» (fail) требует отклонять письма с серверов вне списка, «~all» (softfail) — принимать, но помечать. Начинать безопаснее с «~all», а после того как отчёты DMARC подтвердят, что все легальные отправители перечислены, переходить на «-all».
Сколько DNS-запросов расходует моя SPF-запись?
Инструмент считает это за вас: он разворачивает все include и redirect и показывает число из десяти разрешённых. Больше восьми — повод сократить цепочку, пока очередной сервис рассылок её не переполнил.
Нужна ли SPF-запись домену, с которого не отправляют почту?
Да. Для домена без почты публикуют «v=spf1 -all» — это прямо запрещает отправку от его имени и мешает использовать его в фишинге.
Почему письма проходят SPF, но всё равно попадают в спам?
SPF — только одна из трёх проверок. Нужны ещё подпись DKIM и выровненная политика DMARC, а для почтового сервера — корректная PTR-запись. Полную картину по домену даёт страница проверки почтового домена, по конкретному письму — проверка письма.
Ваш IP-адрес: определяем…