hostingfaq.ru — отвечаем на вопросы о хостинге простым языком 45 провайдеров · 146 ответов · данные от 14.10.2026
hostingfaqвопрос — ответ Обновлено 14.10.2026

SPF запись: как создать и добавить в DNS домена — инструкция для новичка

Обновлено 6 октября 2026 Чтение 11 мин Раздел: Блог о хостинге и серверах: инструкции, разборы и настройки

SPF запись сообщает почтовым серверам, с каких адресов разрешено отправлять письма от имени вашего домена. Без неё письма чаще попадают в спам или отклоняются. В этой инструкции из блога HostingFAQ вы разберёте синтаксис, создадите запись в DNS (Domain Name System), проверите её и исправите типичные ошибки. Нужны доступ к панели домена и список ваших почтовых сервисов.

SPF запись: как создать и добавить в DNS домена — инструкция для новичка

Коротко

  • SPF (Sender Policy Framework) — это TXT-запись в DNS, которая перечисляет серверы, имеющие право отправлять почту от вашего домена
  • Запись всегда начинается с v=spf1 и заканчивается механизмом all, например ~all или -all
  • На домен допустима только одна SPF-запись: две записи v=spf1 дают ошибку проверки
  • При проверке разрешено не больше 10 DNS-запросов: include, a, mx, redirect и exists учитываются в этом лимите
  • Рекомендуемый TTL для новой записи — 3600 секунд (1 час); обновление обычно занимает от нескольких минут до нескольких часов
  • Проверить запись можно командой nslookup -type=txt example.ru за 1 минуту
  • SPF защищает от подделки адреса в конверте письма, но не заменяет DKIM и DMARC

Что такое SPF запись и зачем она нужна

SPF (Sender Policy Framework) — это запись типа TXT (текстовая запись) в DNS (системе доменных имён). Она перечисляет серверы, которым разрешено отправлять почту от имени вашего домена. Стандарт описан в RFC 7208 и действует с 2014 года.

Почтовый протокол сам не проверяет, кто написал адрес отправителя. Любой человек может указать в конверте письма info@example.ru, не имея доступа к вашему домену. Так устроены фишинговые рассылки от имени компаний.

Сервер получателя берёт IP-адрес отправителя и сверяет его со списком в SPF. Если адреса нет в списке, письмо уходит в спам или отклоняется. В итоге ваши настоящие письма реже попадают в спам, а домен труднее подделать. SPF проверяет адрес в конверте (Return-Path), а не видимое поле From.

Вот пример записи для домена example.ru, которая читается слева направо:

Если почту вы отправляете со своего сервера, изучите ответы на вопросы о VPS и заранее определите, какой IP-адрес внести в запись.

Как работает проверка SPF при получении письма

Проверка идёт автоматически и занимает доли секунды. Сервер-получатель берёт домен из адреса отправителя в конверте письма, то есть из поля Return-Path, а не из видимого поля From. Затем он запрашивает в DNS TXT-запись этого домена, например example.ru, и ищет строку, которая начинается с v=spf1.

Дальше сервер сравнивает IP-адрес (Internet Protocol) отправителя, скажем 203.0.113.10, со списком из записи v=spf1 ip4:203.0.113.10 mx ~all. Узнать свой внешний IP-адрес можно за минуту, а как серверы обмениваются данными, объясняет материал про сетевой протокол. Подмену видимого From SPF не ловит: для этого нужен DMARC.

Результат проверки — один из четырёх:

  • pass: адрес разрешён, письмо проходит;
  • fail: адрес запрещён при -all (жёсткий отказ), письмо обычно отклоняют;
  • softfail: адрес не указан при ~all (мягкий отказ), письмо чаще принимают, но с подозрением на спам;
  • neutral: владелец домена не дал оценки, например при ?all.

Для запуска подходит ~all, а -all включают после проверки всех отправителей. Ещё одно ограничение: на проверку отводится не больше 10 DNS-запросов. В лимит входят include, a, mx, ptr, exists и redirect, а ip4 и ip6 не входят, потому что адрес записан прямо. При превышении лимита получатель вернёт ошибку permerror.

Схема проверки SPF: сервер-получатель запрашивает TXT-запись домена в DNS и сравнивает IP отправителя
Как почтовый сервер сверяет IP отправителя с SPF-записью домена

Из чего состоит SPF запись: синтаксис и механизмы

SPF (Sender Policy Framework) хранится в DNS как одна строка типа TXT на самом домене. Она начинается с v=spf1, затем идут механизмы, а в конце стоит all. Для домена example.ru типичная запись выглядит так: v=spf1 ip4:203.0.113.10 mx ~all.

Читайте строку слева направо. v=spf1 задаёт версию, ip4:203.0.113.10 разрешает отправку с этого IP-адреса (Internet Protocol), mx разрешает серверы из MX-записей домена, а ~all помечает всех остальных как подозрительных. Как устроены адреса, разберёте в материале о белых и серых IP-адресах. Значения для почты Яндекса смотрите в инструкции по DNS для Яндекс 360.

Элемент Что делает Пример
ip4, ip6 Разрешает адрес или сеть ip4:203.0.113.10
a, mx Разрешает адреса A-записи или MX-серверов домена mx
include Подключает SPF другого сервиса include:_spf.example.net
redirect Берёт правила целиком у другого домена redirect=_spf.example.net
all Задаёт правило для всех остальных ~all
+, -, ~, ? Квалификатор: разрешить, запретить, мягкий отказ, нейтрально -all

При проверке разрешено не больше 10 DNS-запросов. В этот лимит входят include, a, mx, redirect и exists, а ip4 и ip6 не входят. Одна текстовая строка в TXT не длиннее 255 символов, поэтому длинную запись делят на несколько строк в кавычках.

Как добавить SPF запись в DNS домена: пошаговая инструкция

SPF-запись создаётся один раз и занимает около 10 минут вместе с проверкой. Главное — заранее собрать всех, кто отправляет письма от вашего домена, иначе часть писем попадёт в спам. Дальше везде используется домен example.ru и адрес сервера 203.0.113.10.

Если вы управляете DNS (Domain Name System) через панель регистратора, подробности интерфейса есть в материале о панели управления доменом. Если почту и сайт вы держите на своём сервере, пригодится раздел о VPS, где разобраны вопросы по серверам.

Чтобы добавить запись, выполните шаги по порядку:

  1. Составьте список отправителей: почтовый сервис, сайт с формами, сервис рассылок, собственный сервер.
  2. Возьмите у каждого сервиса значение include или IP-адрес. Для своего сервера это, например, ip4:203.0.113.10.
  3. Откройте управление DNS у регистратора или хостера.
  4. Создайте запись типа TXT с именем @ и значением v=spf1 ip4:203.0.113.10 mx ~all.
  5. Поставьте TTL (Time To Live, время жизни записи) 3600 секунд, то есть 1 час.
  6. Сохраните запись. Обновление обычно занимает от нескольких минут до нескольких часов, иногда до 24 часов.
  7. Проверьте результат командой nslookup -type=txt example.ru. В ответе должна появиться строка, начинающаяся с v=spf1.

Режим ~all (мягкий отказ) подходит для запуска. Жёсткий отказ -all включайте после того, как убедитесь, что учли всех отправителей.

Если на домене уже есть запись v=spf1, не создавайте вторую: две SPF-записи дают ошибку permerror. Добавьте новые механизмы в существующее значение, например include:_spf.service.example, и оставьте один all в конце. Помните про лимит в 10 DNS-запросов на проверку: include, a и mx его расходуют, а ip4 нет.

Для почты на Yandex 360 значения берите по инструкции про DNS-записи Yandex 360, а общие принципы описаны в статье про Yandex DNS.

Форма добавления TXT-записи SPF в панели DNS: имя @, значение v=spf1 ip4:203.0.113.10 mx ~all, TTL 3600
Форма создания TXT-записи с SPF в панели управления DNS (иллюстрация интерфейса) (иллюстрация интерфейса)

Как проверить SPF запись после настройки

Запись проверяют командой в терминале. На Windows, macOS и Linux работает nslookup -type=txt example.ru, на macOS и Linux также dig TXT example.ru +short. Проверка занимает около 1 минуты. Если терминал вам незнаком, начните с материала о работе с Linux на сервере.

В ответе найдите одну строку, которая начинается с v=spf1, например v=spf1 ip4:203.0.113.10 mx ~all. Две такие строки дают ошибку permerror, поэтому лишнюю удалите. Если строки нет или виден старый вариант, запись ещё не обновилась. Обычно это занимает от нескольких минут до нескольких часов, иногда до 24 часов: при TTL (Time To Live) 3600 секунд старый ответ может храниться в кэше до 1 часа.

Затем отправьте проверочное письмо с адреса на example.ru на другой почтовый ящик и откройте исходный код письма. Адрес сервера-отправителя сверьте через проверку IP-адреса. В заголовках Received-SPF или Authentication-Results ищите один из результатов:

  • pass — отправитель разрешён, настройка верна;
  • softfail — сервера нет в записи, письмо доходит с пометкой при ~all;
  • fail — сервер запрещён при -all;
  • permerror — ошибка в самой записи, например две записи v=spf1.
Терминал с выводом nslookup -type=txt для домена example.ru и строкой v=spf1
Результат проверки SPF-записи командой nslookup в терминале (иллюстрация интерфейса)

Частые ошибки в SPF записи и как их исправить

SPF (Sender Policy Framework) ломается по одним и тем же причинам. Чаще всего встречаются шесть ошибок: две записи на домене, превышенный лимит запросов, забытый отправитель, опечатки в синтаксисе, слишком ранний режим -all и неверный тип записи.

После любой правки подождите обновления DNS: обычно от нескольких минут до нескольких часов. Затем проверьте результат командой dig TXT example.ru +short.

1. Две SPF-записи на домене

Каждый сервис просит добавить свою строку v=spf1, и на домене появляется две записи. Проверка завершается ошибкой permerror. Объедините всё в одну запись: v=spf1 ip4:203.0.113.10 mx include:spf.sender.example ~all. Лишние строки удалите.

2. Превышен лимит в 10 DNS-запросов

В лимит входят include, a, mx, ptr, exists и redirect. Удалите include от сервисов, которыми вы больше не пользуетесь. Если у сервиса постоянный адрес, замените include на ip4: он в лимит не входит.

3. Забыт отправитель

Рассылка, CRM и форма на сайте отправляют письма со своих серверов. Если их нет в записи, письма уходят в спам или отклоняются. Найдите в справке сервиса его include или IP-адрес и добавьте в запись. Общую схему настройки почты разбирает материал настройте доменную почту по инструкции.

4. Опечатки в синтаксисе

Запись должна начинаться с v=spf1, механизмы разделяются одним пробелом, в конце стоит all. Лишний пробел в начале, v=spf1 в середине или отсутствие all делают запись недействительной. Перепишите строку целиком. Одна текстовая строка в TXT не длиннее 255 символов, длинные записи делят на несколько строк в кавычках.

5. Режим -all включён слишком рано

При -all письма от забытого отправителя будут отклонены. Начните с ~all (мягкий отказ). Переключайтесь на -all, когда проверите всех отправителей.

6. Запись создана как SPF вместо TXT

Отдельный тип SPF устарел, и почтовые серверы его не читают. Удалите такую запись и создайте новую типа TXT с именем @ и TTL 3600 секунд.

Частая ошибка. Добавлять новую SPF-запись, не посмотрев на старую. Сначала откройте текущую TXT-запись домена и дополните её.

Обычно хватает одной проверки: одна TXT-запись, не больше 10 запросов, все отправители в списке. Начните с ~all, и письма не потеряются.

SPF, DKIM и DMARC: чем отличаются и что настроить вместе

Три механизма решают разные задачи и работают только вместе. SPF (Sender Policy Framework) проверяет, что письмо пришло с разрешённого IP-адреса. DKIM (DomainKeys Identified Mail) проверяет цифровую подпись письма. DMARC (Domain-based Message Authentication, Reporting and Conformance) задаёт, что делать с письмом, если проверки не прошли.

SPF смотрит на адрес в конверте (Return-Path), а не на видимое поле From. Поэтому без DMARC SPF не защищает From: злоумышленник подставит ваш адрес в это поле, и письмо может дойти. DMARC требует, чтобы домен в From совпадал с доменом, прошедшим SPF или DKIM.

Механизм Где хранится Пример значения Что проверяет
SPF TXT на домене example.ru v=spf1 ip4:203.0.113.10 mx ~all IP-адрес отправителя
DKIM TXT на default._domainkey.example.ru v=DKIM1; k=rsa; p=… Подпись письма публичным ключом
DMARC TXT на _dmarc.example.ru v=DMARC1; p=none; rua=mailto:dmarc@example.ru Политику и отчёты

Настраивайте в таком порядке:

  1. Опубликуйте SPF-запись и проверьте её командой dig TXT example.ru +short.
  2. Включите DKIM в почтовом сервисе и добавьте выданный ключ в DNS.
  3. Добавьте DMARC с политикой p=none: письма не блокируются, вы только получаете отчёты.
  4. Через 2–4 недели проверьте отчёты и ужесточите политику до quarantine, затем до reject.

Как вносить записи, зависит от DNS-хостинга: см. инструкции для DNS в Яндекс 360 и для Cloudflare.

Когда одного SPF недостаточно и кому настройка не нужна

SPF (Sender Policy Framework) закрывает только часть угроз. Запись проверяет адрес отправителя в конверте (Return-Path), а не видимое поле From, поэтому мошенник может подделать имя в письме и пройти проверку. Для защиты From нужен DMARC. SPF также не шифрует почту: содержимое защищает только транспортное шифрование между серверами.

Вторая слабость — пересылка. Когда сервер пересылает письмо дальше, получатель видит IP-адрес пересылающего сервера, которого нет в вашей записи, и SPF выдаёт отказ. От этого помогает DKIM: его подпись переживает пересылку.

Если с домена не отправляют почту, например с парковочного или редиректного, поставьте запрет для всех: v=spf1 -all. Если у вас много внешних сервисов (рассылки, CRM, поддержка), следите за лимитом в 10 DNS-запросов: каждый include может добавлять свои вложенные запросы, а ip4 и ip6 в лимит не входят.

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

  • уберите сервисы, которыми вы больше не пользуетесь;
  • замените a и mx на ip4, если адрес постоянный;
  • держите в домене ровно одну запись v=spf1.

Если планируете почтовый сервер на VPS, вам понадобится собственный IP, а не общий. Прочитайте, как арендовать виртуальный сервер и зачем нужен белый IP, а ответы на частые вопросы собраны на странице о VPS. Для такого сервера настраивают все три записи: SPF, DKIM и DMARC.

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

Что такое SPF запись простыми словами?
Это список серверов, которым вы разрешили отправлять письма от имени своего домена. Список хранится в DNS в виде TXT-записи. Получатель сверяет с ним адрес отправителя и решает, принять письмо или отправить в спам.
Какой тип DNS-записи нужен для SPF: TXT или SPF?
Нужен тип TXT. Отдельный тип SPF устарел и в RFC 7208 не рекомендован. Если панель предлагает оба, создавайте TXT.
Сколько SPF записей можно добавить на один домен?
Только одну. Если нужно разрешить несколько отправителей, объедините их в одной строке через include и ip4. Две записи v=spf1 приводят к ошибке проверки.
Чем отличается ~all от -all в SPF?
~all означает мягкий отказ: письма с чужих адресов обычно принимаются, но помечаются подозрительными. -all означает жёсткий отказ: такие письма должны отклоняться. Начните с ~all и переключитесь на -all, когда убедитесь, что все отправители учтены.
Что делать, если SPF превысил лимит в 10 запросов?
Уберите лишние include, замените часть из них на прямые адреса ip4 и ip6, удалите неиспользуемые сервисы. Адреса ip4 и ip6 в лимит не входят. После правки проверьте запись ещё раз.
Как быстро SPF запись начинает работать?
Обычно от нескольких минут до нескольких часов, это зависит от TTL. При TTL 3600 секунд старое значение может жить в кэше до часа, в редких случаях обновление идёт до 24 часов.
Как проверить SPF запись домена?
Выполните в терминале nslookup -type=txt example.ru или dig TXT example.ru +short, подставив свой домен. В ответе найдите строку, начинающуюся с v=spf1. Для полной проверки отправьте письмо на другой ящик и откройте заголовки.
Нужна ли SPF запись, если почта размещена у Яндекса или другого сервиса?
Да. Сервис подсказывает нужное значение, обычно это механизм include или redirect, и вы добавляете его в DNS домена. Точную строку берите из документации вашего почтового сервиса.
Что писать в SPF для домена, с которого не отправляют почту?
Поставьте запись v=spf1 -all. Она сообщает получателям, что ни один сервер не имеет права отправлять письма от этого домена. Это защищает неиспользуемый домен от подделки.
SPF защищает от спама полностью?
Нет. SPF проверяет адрес в конверте письма и плохо переносит пересылку. Для надёжной защиты настройте вместе DKIM и DMARC.

Проверьте себя

  • В DNS домена создана одна TXT-запись, начинающаяся с v=spf1
  • В записи учтены все отправители: почтовый сервис, сайт, рассылки, свой сервер
  • Количество DNS-запросов в записи не превышает 10
  • Запись заканчивается механизмом all: сначала ~all, после проверки при необходимости -all
  • TTL выставлен в 3600 секунд, после сохранения прошло достаточно времени на обновление
  • Команда nslookup -type=txt example.ru возвращает вашу запись
  • Рядом настроены DKIM и DMARC

На сайте есть партнёрские ссылки: если вы оформите заказ по ним, мы получим вознаграждение от провайдера. Это не влияет на цену для вас и на место в рейтинге.