DNS-валидация email: проверка через MX, A, TXT
DNS-валидация email - это проверка доменной части email-адреса (всё что после @) через запросы к DNS-серверам. Валидатор спрашивает DNS: есть ли у этого домена почтовая инфраструктура? Если нет MX-записей и нет A-записей, на этот домен невозможно доставить письмо. Адрес невалидный, проверку можно заканчивать.
Место DNS-проверки в цепочке валидации
Полная валидация email проходит несколько этапов. Первый - синтаксическая проверка: правильный ли формат адреса. Второй - DNS-валидация: существует ли домен и может ли он принимать почту. Третий - SMTP-проверка: есть ли конкретный ящик на сервере.
DNS-валидация - второй этап. Она быстрее SMTP-проверки (DNS-запрос занимает миллисекунды, SMTP-диалог - секунды) и отсекает заведомо нерабочие адреса до того, как валидатор будет тратить ресурсы на SMTP-соединение.
Проверка MX-записей
MX-запись (Mail Exchange) указывает, какой сервер обрабатывает почту для домена. Когда вы отправляете письмо на user@example.com, ваш почтовый сервер сначала ищет MX-записи example.com. Они говорят: «почту для этого домена принимает сервер mail.example.com с приоритетом 10».
Если MX-записей нет, это не всегда значит, что домен не принимает почту. По RFC 5321, при отсутствии MX-записи почтовый сервер должен попробовать A-запись домена. Но на практике отсутствие MX-записи - сильный сигнал: домен, скорее всего, не настроен для приёма почты.
У домена может быть несколько MX-записей с разными приоритетами. Это резервирование: если основной сервер недоступен, почта идет на запасной. Валидатор проверяет наличие хотя бы одной MX-записи и доступность указанного сервера.
Fallback на A-запись
A-запись связывает доменное имя с IP-адресом. Если MX-записи отсутствуют, валидатор проверяет A-запись. Наличие A-записи означает, что у домена есть сервер, который теоретически может принимать почту через порт 25.
На практике это ненадежный сигнал. Многие домены имеют A-запись (там висит сайт), но почту не обрабатывают. Веб-сервер не слушает порт 25. Поэтому наличие только A-записи без MX - повод для дополнительной проверки через SMTP, а не для финального решения.
Анализ TXT-записей
TXT-записи хранят текстовую информацию о домене. Для email важны три вида TXT-записей: SPF, DKIM и DMARC. Их наличие не обязательно для приёма почты, но даёт валидатору дополнительную информацию.
SPF-запись (v=spf1 ...) перечисляет серверы, которым разрешено отправлять почту от имени домена. Если у домена есть SPF, значит, кто-то настроил почтовую аутентификацию. Это косвенный признак того, что домен используется для email.
DMARC-запись (_dmarc.domain.com) задает политику обработки неаутентифицированных писем. Её наличие говорит о зрелости почтовой инфраструктуры домена.
Валидатор может использовать TXT-записи для оценки надежности домена. Домен с настроенными SPF, DKIM и DMARC - скорее всего легитимный бизнес. Домен без единой TXT-записи, зарегистрированный вчера - подозрительный.
Что DNS-валидация не проверяет
DNS-валидация не знает, существует ли конкретный почтовый ящик. Она проверяет домен, а не локальную часть адреса. Домен example.com может иметь отличные MX-записи, но ящика nonexistent@example.com на нём нет. Для этого нужна SMTP-проверка.
DNS-валидация не определяет catch-all конфигурацию. Домен может принимать почту на любой адрес, и DNS об этом ничего не скажет.
DNS-запросы могут кэшироваться. Если домен только что удалил MX-записи, кэш DNS-сервера может ещё какое-то время возвращать старые данные. Время жизни кэша определяется TTL-записью.
uChecker выполняет DNS-валидацию как часть комплексной проверки каждого адреса. Сервис проверяет MX-записи, A-записи и TXT-записи домена, а затем переходит к SMTP-верификации для подтверждения существования конкретного ящика.
