техническое · ответ с источниками

Валидация email-адресов

Валидация email-адреса — это проверка того, что адрес синтаксически корректен и соответствует принятым интернет-стандартам. Она позволяет ещё до попытки отправки убедиться, что указанный адрес правильно оформлен, а домен назначения настроен на приём почты.

Проверка синтаксиса

На первом этапе строка проверяется на соответствие стандарту RFC 5322. Проверка гарантирует, что в адресе есть локальная часть, символ @ и доменная часть. Она выявляет недопустимые символы, неправильно расставленные точки и отсутствующие компоненты, которые сразу привели бы к ошибке SMTP.

Проверка DNS и MX-записей

После проверки синтаксиса система выполняет DNS-запрос, чтобы убедиться, что домен существует. В частности, она проверяет наличие записей почтового обменника (MX). Если у домена нет MX-записей или он не разрешается в DNS, он не может принимать почту, и любая попытка отправки закончится жёстким отказом (bounce).

Влияние на репутацию отправителя

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

Практическое внедрение

Разработчики часто добавляют валидацию прямо в точке ввода с помощью регулярных выражений или специализированных библиотек. Для больших списков SendHQ и его бесплатные инструменты (https://sendhq.cc/tools) помогают выявить некорректные адреса до того, как они попадут в конвейер рассылки.

Пример валидации

Адрес вида user@example..com не проходит проверку синтаксиса из-за двойной точки. Адрес вида user@nonexistent-domain-12345.com проходит проверку синтаксиса, но не проходит этап поиска MX-записи в DNS.

Что спрашивают команды

Гарантирует ли валидация, что адрес активен?

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

Чем валидация отличается от верификации?

Под валидацией обычно понимают проверку синтаксиса и DNS, а верификация, как правило, включает более глубокие проверки, подтверждающие, что адрес доступен.

Почему проверки синтаксиса недостаточно?

Даже идеально оформленный email-адрес может быть недействительным, если домен не существует или не настроен на приём входящего SMTP-трафика.

Первоисточники