Проверка email-адресов и Domain Intelligence используют общий баланс кредитов. Как работают кредиты

Начать бесплатно

Блог

Может ли домен принимать почту без MX-записи?

Отсутствие MX-записей еще не означает, что домен не принимает почту. Проверьте ответ DNS, неявный маршрут и адреса почтовых серверов, прежде чем делать вывод.

Опубликовано

На этой странице

Да, иногда. Домен без MX-записи может принимать почту по правилу неявной маршрутизации SMTP. Для этого домен должен разрешаться в IP-адрес, по которому почтовый сервер принимает письма. Null MX прямо заявляет, что домен почту не принимает. RFC 5321, раздел 5.1 определяет резервный маршрут, а RFC 7505, раздел 3 описывает null MX.

Здесь речь о приеме почты из интернета. Ответ DNS не оценивает аутентификацию исходящих писем или репутацию отправителя. Общие понятия объясняет определение MX-записи.

Если MX нет, проверьте адресные записи самого домена

Когда запрос MX завершился успешно, но MX-записей в ответе нет, SMTP считает сам домен неявным почтовым сервером с приоритетом 0. Адрес сервера берется из A- или AAAA-записей домена. Правило работает только при пустом списке MX. Этот порядок выбора сервера описан в RFC 5321.

Если успешные запросы адресных записей тоже не возвращают ни A, ни AAAA, неявного адреса назначения нет. Работающий сайт по найденному адресу не доказывает, что там же принимает соединения SMTP-сервер. DNS дает возможный маршрут; прием писем по-прежнему зависит от почтового сервиса. RFC 7505 объясняет, почему одних адресных записей недостаточно для успешной доставки.

Null MX заявляет, что домен не принимает почту

Null MX состоит из единственной MX-записи с приоритетом 0 и . вместо имени почтового сервера:

nomail.example. 3600 IN MX 0 .

Точка обозначает корневую метку DNS и не указывает на почтовый сервер. Домен с null MX не должен публиковать другие MX-записи рядом с ней. Оба требования установлены в RFC 7505.

Если рядом с null MX стоит обычная MX-запись, конфигурация противоречит сама себе. Emvero отмечает этот случай кодом DOMAIN_MAIL_ROUTE_MISCONFIGURED. Проверка возвращает unknown: сервис не угадывает, какое из заявлений имел в виду владелец домена.

Непригодная MX-запись не включает неявный маршрут

Если MX-записи существуют, отправляющий сервер должен разрешить указанные в них имена. Когда ни один сервер не пригоден для доставки, подставлять адреса самого домена по правилу неявной маршрутизации нельзя. Это ограничение прямо указано в RFC 5321, раздел 5.1.

Например, работающий сайт домена не исправляет отсутствие адресных записей у сервера, указанного в MX. Неудачный DNS-запрос для этого сервера тоже нужно разобрать: записи могут отсутствовать, а может возникнуть временная ошибка DNS. Если адрес сервера не удалось определить, это еще не доказывает постоянную неисправность ящика.

Отличайте отсутствие данных от ошибки DNS

NXDOMAIN означает, что запрошенное имя не существует. NODATA означает, что для этого имени нет записей запрошенного типа. Поэтому ответ NODATA на запрос MX может привести к поиску адресных записей самого домена. Такой ответ не означает, что домен отсутствует. Эти отрицательные ответы описаны в RFC 2308, раздел 2.

При SERVFAIL или таймауте результат запроса остается неопределенным. Повторите запрос или проверьте DNS-резолвер, прежде чем делать вывод о почтовом маршруте. SMTP требует от отправителя отложить доставку и повторить попытку после временной ошибки DNS-запроса. RFC 5321 описывает это поведение. Разбор ошибок DNS объясняет соответствующие различия в результатах проверки.

Сначала разберите ответ, затем меняйте адрес

Если у вас установлена утилита dig, посмотрите ответ на запрос MX:

dig MX example.com

Замените example.com на домен, который проверяете. Сохраните заголовок ответа и секцию с записями: сокращенный вывод сам по себе скрывает детали, которые помогают отличить пустой ответ от ошибки. Синтаксис запросов и параметры вывода описаны в руководстве ISC по dig.

  1. Сначала проверьте статус ответа. Разберите NXDOMAIN, SERVFAIL или таймаут, прежде чем считать результат пустым списком MX.
  2. Если ответ содержит MX 0 ., проверьте, единственная ли это MX-запись. Одна запись null MX заявляет отказ от приема почты; смешанные записи требуют проверки настройки.
  3. Если есть обычные MX-записи, запросите A и AAAA для указанных в них серверов. Не подставляйте адреса самого домена как неявную замену.
  4. Если после успешного разрешения список MX пуст, запросите A и AAAA для самого домена. Это возможные адреса неявного почтового маршрута.

Примеры ниже синтетические. Имена в зоне .example и IP-адрес из диапазона для документации служат иллюстрацией, а не результатами реальных запросов.

Синтетический ответ DNS Вывод о маршруте Следующий шаг
У implicit.example. нет MX, но есть A 192.0.2.10 Есть неявный адрес назначения; запись не доказывает, что там работает SMTP-сервис Проверьте почтовый сервис, если важно фактическое принятие писем
nomail.example. IN MX 0 . является единственной MX-записью Домен прямо заявляет, что не принимает почту Исправьте домен, если его ввели по ошибке
broken.example. IN MX 10 mx.broken.example.; после успешных запросов у сервера нет ни A, ни AAAA Пригодный явный маршрут не найден Попросите владельца домена проверить сервер, указанный в MX
У mixed.example. одновременно есть null MX и обычные MX-записи Противоречивая конфигурация Попросите проверить настройку DNS
Запрос для домена возвращает NXDOMAIN Согласно ответу DNS, имя не существует Проверьте, правильно ли указан домен
Запрос возвращает SERVFAIL или завершается по таймауту Маршрут остается неопределенным Повторите запрос или разберите ошибку DNS; сохраните неопределенность

Как читать свидетельства проверки домена в Emvero

Публичный инструмент Emvero проверяет маршрутизацию входящей почты без SMTP-сессии. Он показывает вывод о маршруте, а не исходные имена MX-серверов и значения приоритетов. Чтобы посмотреть сами записи, используйте DNS-утилиту.

Если MX-записи указывают маршрут, по ним можно определить видимого почтового провайдера и не перепутать шлюз с сервисом ящиков.

Для проверки полного email-адреса в интеграции API проверки email принимает variant: "domain". Читайте checks.mail_routing вместе с status и reason_codes. IMPLICIT_MX носит информационный характер. NULL_MX и DNS_NXDOMAIN обосновывают undeliverable; при DNS_SERVFAIL, DNS_TIMEOUT и противоречивом маршруте сохраняется unknown. DNS_NODATA входит в словарь DNS-кодов. Однако пустой ответ MX на уровне DNS сам по себе не гарантирует этот код в API и не является вердиктом об адресе.

Маршрут домена не доказывает существование ящика

Маршрут для example.com ничего не говорит о том, существует ли person@example.com. Полная проверка может собрать свидетельства на уровне получателя, если почтовый сервер это позволяет. Обмен командами SMTP объясняет, как проходит такая проверка. Принятие адреса тоже может отражать поведение catch-all домена или решение проверить получателя позже.

Сравнение полной проверки и проверки домена поможет выбрать свидетельства, нужные для вашего решения. Чтобы сейчас разобраться во входящей маршрутизации, проверьте почтовый маршрут домена. Публичная проверка бесплатна и не требует аккаунта.

Выберите, что проверить дальше.

Запустите проверку в личном кабинете и посмотрите данные в результате.