TXT-запись (от англ. text) — это тип DNS Lookup, в котором домен хранит произвольный текст, читаемый другими сервисами. Чаще всего TXT-записи используются для подтверждения владения доменом, а также для настройки почтовой аутентификации: SPF, DKIM и DMARC. Значение указывается в кавычках и добавляется в панели DNS-хостинга.
В этом руководстве разберём, что такое TXT-запись и как она устроена, для чего она нужна на практике, какие у неё технические ограничения, как правильно записать значение с кавычками, добавить его у регистратора или на DNS-хостинге, проверить результат и не наступить на типичные грабли вроде двух SPF-записей или лишних пробелов.
Что такое TXT-запись
TXT-запись — один из базовых типов ресурсных записей DNS, описанных ещё в RFC 1035. Изначально она задумывалась как способ привязать к доменному имени произвольную текстовую заметку. Со временем формат оказался настолько удобным, что стал стандартным контейнером для машиночитаемых данных: политик безопасности почты, ключей подписи и токенов верификации.
Технически TXT-запись состоит из имени (хоста), типа TXT, значения TTL и одной или нескольких строк текста. Каждая строка заключается в двойные кавычки. Одно доменное имя может иметь сразу несколько TXT-записей — они не конфликтуют между собой, пока речь не идёт о специальных случаях вроде SPF, где допустима только одна запись.
Важно понимать разницу между обычной DNS-записью адреса (A или AAAA), которая говорит браузеру, к какому IP подключаться, и TXT-записью, которая никого никуда не направляет. TXT — это данные для чтения конкретными сервисами, а не для маршрутизации трафика. Если вы только знакомитесь с системой доменных имён, начните с обзора типов DNS-записей.
Для чего нужна TXT-запись
Практических применений у TXT-записи много, но почти все они сводятся к двум задачам: доказать, что домен принадлежит именно вам, и защитить исходящую почту от подделки. Ниже — сводная таблица основных сценариев с примером значения.
| Применение | Хост | Пример значения |
|---|---|---|
| Верификация Google | @ | google-site-verification=rXep9x...KJ2 |
| Верификация Yandex | @ | yandex-verification: a1b2c3d4e5f6 |
| SPF (какие серверы шлют почту) | @ | v=spf1 include:_spf.google.com ~all |
| DKIM (ключ подписи) | selector._domainkey | v=DKIM1; k=rsa; p=MIGfMA0... |
| DMARC (политика обработки) | _dmarc | v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com |
| BIMI (логотип в письме) | default._bimi | v=BIMI1; l=SSL/TLS проверку://example.com/logo.svg |
Верификация домена
Google Search Console, Яндекс Вебмастер, Microsoft 365 и десятки других сервисов при подключении просят добавить TXT-запись с уникальным токеном. Логика проста: если вы смогли отредактировать DNS домена, значит, вы им управляете. После проверки токен можно оставить — он безвреден и не влияет на работу почты или сайта.
Аутентификация почты: SPF, DKIM, DMARC
Это ключевая роль TXT-записей сегодня. SPF перечисляет серверы, которым разрешено отправлять письма от имени вашего домена (стандарт описан в RFC 7208). DKIM хранит публичный ключ, которым принимающая сторона проверяет цифровую подпись письма. DMARC связывает SPF и DKIM в единую политику и сообщает, что делать с письмами, не прошедшими проверку. Подробный разбор трёх механизмов есть в отдельном руководстве по SPF, DKIM и DMARC.
BIMI и прочие сценарии
BIMI позволяет показывать логотип бренда рядом с письмом в почтовых клиентах, которые его поддерживают. Кроме того, через TXT нередко публикуют политики _mta-sts, ключи для внешних интеграций и служебные метки. Формат один — меняется только смысл текста внутри кавычек.
Ограничения и синтаксис TXT-записи
Главное техническое ограничение задано протоколом: одна строка TXT-записи не может превышать 255 символов. Если значение длиннее (типичная ситуация с DKIM-ключами RSA 2048), его разбивают на несколько подстрок в кавычках, а DNS-сервер при выдаче склеивает их обратно в единый текст без разделителей. Выглядит это так:
"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7""nOq2hK4rE9pW3vLxYz1aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789abcdef"Обратите внимание: обе подстроки заключены в двойные кавычки, между ними нет запятой — просто перенос. Сам домен при этом не имеет жёсткого лимита на суммарную длину TXT, но ответ DNS должен уместиться в разумный размер UDP-пакета, иначе резолвер переключится на TCP.
Кавычки — вторая частая точка ошибок. В большинстве панелей управления кавычки вокруг значения добавляются автоматически, и вписывать их вручную не нужно. Но если панель принимает «сырой» синтаксис зоны, кавычки обязательны, а внутренние кавычки экранируются обратным слэшем. Всегда сверяйтесь с подсказками своего DNS-провайдера.
Как добавить TXT-запись
Порядок действий у большинства регистраторов и DNS-хостингов одинаковый, различаются только названия кнопок:
- Войдите в панель управления DNS вашего домена (у регистратора или на стороне хостинга или CDN, если делегированы там NS-серверы).
- Найдите раздел «DNS-записи», «Управление зоной» или «DNS Records» и нажмите «Добавить запись».
- Выберите тип
TXT. - В поле «Хост» или «Имя» укажите узел:
@для корня домена,_dmarcдля DMARC,selector._domainkeyдля DKIM. - В поле «Значение» вставьте текст без внешних кавычек (если панель добавляет их сама).
- Оставьте TTL по умолчанию (обычно 3600 секунд) и сохраните.
Ниже — пример корректного SPF-значения и токена верификации, как их обычно вписывают:
; SPF — одна запись на весь домен
@ IN TXT "v=spf1 include:_spf.google.com include:mailgun.org ~all"
; Верификация
@ IN TXT "google-site-verification=rXep9xKJ2fQ8vN0"Изменения не вступают в силу мгновенно: нужно время на распространение по кэшам резолверов, обычно от нескольких минут до значения TTL старой записи.
Как проверить TXT-запись
После сохранения обязательно убедитесь, что запись видна публично. Самый быстрый способ из командной строки — утилита dig:
dig TXT example.com +short
"v=spf1 include:_spf.google.com ~all"
"google-site-verification=rXep9xKJ2fQ8vN0"
# Проверка DMARC на поддомене
dig TXT _dmarc.example.com +shortФлаг +short оставляет в выводе только значения. На Windows аналог — nslookup -type=TXT example.com. Если предпочитаете браузер, откройте наш инструмент проверки DNS: он покажет все TXT-записи домена без установки утилит. Для отдельной диагностики почтовых политик удобен анализатор SPF, DKIM и DMARC — он не просто выводит записи, а проверяет их корректность.
Частые ошибки
Большинство проблем с TXT-записями сводится к нескольким повторяющимся ситуациям:
- Две SPF-записи. Стандарт разрешает домену только одну TXT-запись, начинающуюся с
v=spf1. Если их две, проверка SPF ломается полностью. Объедините всеincludeв одну строку. - Лишние пробелы и переносы. Пробел перед
v=spf1или внутри токена верификации делает значение недействительным. Копируйте текст аккуратно, без хвостовых пробелов. - Неправильный хост. DMARC должен жить на
_dmarc, DKIM — наselector._domainkey. Запись, добавленная в корень@, работать не будет. - Ручные кавычки там, где панель добавляет свои. В итоге значение оказывается в двойных кавычках —
""v=spf1...""— и не парсится. - Слишком короткий TTL при частых правках. Экспериментируя, ставьте небольшой TTL, но для боевой записи вернитесь к 3600, чтобы снизить нагрузку на DNS.
Полезно после каждой правки сверяться со справочником DNS на MDN и перепроверять запись публично, а не только в панели.
Частые вопросы
Сколько TXT-записей можно добавить на один домен?
Столько, сколько нужно: токены верификации, DKIM для разных селекторов, служебные метки сосуществуют свободно. Исключение — SPF: запись, начинающаяся с v=spf1, должна быть ровно одна на домен, иначе аутентификация почты перестанет работать корректно.
Почему TXT-запись не видна сразу после добавления?
DNS кэширует ответы. Новая запись становится видна по мере истечения TTL старых данных в кэшах резолверов — обычно от нескольких минут до часа. Проверяйте публично через dig или онлайн-инструмент, а не только в панели провайдера.
Нужно ли ставить кавычки в TXT-записи вручную?
Зависит от панели. Большинство веб-интерфейсов добавляют двойные кавычки автоматически — тогда вписывайте только сам текст. Если вы редактируете файл зоны напрямую, кавычки обязательны, а строки длиннее 255 символов разбиваются на несколько подстрок в кавычках.
Можно ли хранить в TXT произвольный текст?
Да, формально TXT допускает любой печатный текст. Но публиковать в нём приватные данные не стоит: TXT-записи общедоступны и легко читаются любым резолвером. Используйте их только для того, что можно раскрывать публично.
Чем отличается TXT-запись от SPF-записи?
Отдельного типа SPF в DNS давно нет — SPF публикуется именно как TXT-запись с содержимым v=spf1 .... То есть SPF — это частный случай TXT с конкретным синтаксисом. Подробности в статье про SPF-запись.
Как быстро проверить сразу SPF, DKIM и DMARC?
Проверьте домен в анализаторе почтовых записей: он вытянет все три TXT-политики, покажет их значения и укажет на ошибки — лишние SPF, отсутствующий DMARC или некорректный синтаксис DKIM — в одном отчёте.