Меню Закрыть

Как проверить работает ли почтовый ящик

Содержание

Данная форма позволяет проверить Email на валидность.

Как проверяется email адрес

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

При запросе подтверждения адреса электронной почты API email будет в первую очередь выполнять стандартную проверку синтаксиса электронной почты, следовательно, проверять его соответствие правилам регулярных выражений, таким как:

Формат адресов электронной почты — local-part @ domain, где local-part может иметь длину до 64 символов, а имя домена может содержать не более 253 символов. Формальные определения приведены в RFC 5322 и RFC 5321 — с более читаемой формой, приведенной в информационном RFC 3696 .

Локальная часть состоит из прописные и строчные латинские буквы (A – Z, a – z) (ASCII: 65–90, 97–122), Цифры от 0 до 9 (ASCII: 48–57), специальные символы: # — _

! $ & ‘() * +,; =: и %20, точка, точка, полная остановка), ASCII 46, при условии, что он не является первым или последним символом, а также при условии, что он не появляется последовательно (например, John..Doe @ example.com не допускается).

Доменная часть email должна соответствовать строгим правилам: она должна соответствовать требованиям к имени хоста, состоящему из букв, цифр, дефисов и точек. Кроме того, доменная часть может быть литералом IP-адреса, заключенным в квадратные скобки, хотя это редко встречается, за исключением спама в электронной почте.

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

Проверяется доступность MX-записи почтового сервера с помощью DNS-запроса.

Проверка самого ящика на сервере(проверить по SMTP)

Для этого сервис устанавливает соединение с почтовым сервером получателя и отправляет ему команды по аналогии с отправкой письма. Если на сервере нет такого получателя, то при отправке команды "письмо для такого-то мыла"(RCPT TO:) сервер отвечает что такого ящика нет(код 550). Не все сервера отвечают согласно требованиям RFC, например сервер mail.ru на любое письмо отвечает кодом 250, что всё Ok.

С примером установления соединения и отправки команд можете ознакомиться здесь. Время проверки каждого е-mail может занимать до 60 секунд.

Некоторые почтовые сервера для защиты от спама используют технологию серых списков (Greylisting). При отправке письма сервер отвечает кодом 451, что он временно не готов принять письмо. В этом случае необходимо повторно проверить почтовый адрес более чем через 30 минут. При разовой проверке и проверке по API повторный запрос не отправляется. При пакетной обработке файла система будет ждать 30+ минут и повторно опрашивать почтовый сервер. Время обработки файла с почтовыми адресами в этом случе существенно возрастает. Дополнительная оплата при пакетной обработке за повторную проверку не взимается.

Читайте также:  Мазда 3 оцинкованный кузов или нет

Почтовый сервер mail.ru на любой адрес отвечает, что такой получатель есть и принимают для него полностью письмо. И только потом присылают FBL письмо, что такого адреса не существует.

Api проверки Email на валидность

Если Вы хотите проверить непосредственное наличие почтового ящика на сервере с помощью SMTP-запроса, добавьте параметр smtp_check . Время проверки может занять до 20 секунд. За проверку по smtp с вас будет списан дополнительный запрос. Пример:

В ответе возможны следующие поля:
email — полный запрошенный e-mail
user — часть email до символа @
domain — домен

format_val > error = ‘Неверный символ в e-mail!’

free — почта на бесплатном почтовом сервере, типа yandex.ru или gmail.com

disposable = true — почта на одноразовом почтовом сервисе типа mailinator.com, trashmail.com
message = ‘Email одноразовый’;

mx_found = false
error = ‘Email сервер не существует!’

role=true — это адрес, который обычно указывает на функцию (например, «поддержка», «администратор почты»), а не на отдельное лицо или имя.

Если передан параметр smtp_check , то дополнительно возвращается:

mx_records — список почтовых серверов
smtp_check = true или false, если false, то в error код ответа SMTP-сервера

Если все проверки пройдены, возвращается:
message = ’email валидный’

Примеры API запросов проверки email

Пример запроса в формате json: https://htmlweb.ru/json/service/[email protected]

Пример запроса: https://htmlweb.ru/json/service/[email protected]

Пример запроса: https://htmlweb.ru/json/service/[email protected]&smtp_check

Команды SMTP сервера

SMTP (Simple Mail Transfer Protocol — простой протокол передачи почты) — это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP. ESMTP (англ. Extended SMTP) — масштабируемое расширение протокола SMTP. В настоящее время под «протоколом SMTP», как правило, подразумевают ESMTP и его расширения. SMTP использует порт Порты TCP 25.

Протокол SMTP (RFC 821) использует простые текстовые команды в формате ASCII и возвращает трехзначные кодированные ответы с текстовыми сообщениями.

Читайте также:  Как отключить антивирус mcafee на виндовс 10

Формат команд в SMTP прост: command [parameter], где command — четырехсимвольная команда протокола SMTP, а parameter — необязательный параметр, определяющий тип данных в команде.

EHLO сервер_отправитель> или устаревшая HELO хост_отправитель — Открывам соединение и сообщаем серверу имя отправляющего сервера (хоста)
MAIL FROM: адрес_отправителя — Email-адрес отправителя.
RCPT TO: адрес_получателя — Email-адрес получателя (recipient)
DATA — После этой команды передается тело сообщения оканчивающееся новой строкой с единственным символом "точка" (
.
), после этого восстанавливается командный режим
RSET — Прервать сообщение. При этом все ранее посланные команды — MAIL, RCPT и DATA будут аннулированы.
HELP [команда] — Краткая справка по команде или список поддерживаемых команд
QUIT — Завершение сеанса SMTP
VRFY имя_пользователя — Проверка имени пользователя (Команда обычно запрещена в целях безопасности)
EXPN имя_пользователя — Показывает список всех алиасов пользователя (списки рассылки по Email-адресу) (Команда обычно запрещена в целях безопасности)
AUTH — Показывает серверу механизм аутентификации. RFC 4954 (пришел на смену RFC 2554).

Купить скрипт проверки email адресов

На написание этого скрипта ушло меньше часа времени, а на его отладку я потратил больше месяца. Неоднократно я получал бан от почтовых серверов и потом вытаскивал свой ip из бана. Если Вы не хотите пройти через все злоключения, Вы можете приобрести скрипт проверки почтовых адресов за 8000 рублей (

125$). Код скрипта реализован на PHP, полностью открытый и не использует никаких дополнительных библиотек. Скрипт НЕ будет работать на виртуальном хостинге с закрытым портом SMTP.

    Соглашение по использованию платной версии:

  • Вы можете использовать полученный код в любых своих разработках, вы не обязаны указывать ссылку на источник.
  • Вы НЕ имеете права перепродавать его, размещать в свободном или ограниченном доступе, а также публиковать в любом виде.
  • Все остальные права сохраняются за автором.
Читайте также:  Как войти в заводские настройки андроид

РегистрацияВойтиВойти через VKВойти через FBВойти через Google

Инструмент позволяет проверить доступность почтового сервера получателя и возможность доставки электронных сообщений в указанный почтовый ящик.

Обратите внимание, что не все почтовые сервисы отвечают на наши запросы, поэтому, мы не можем гарантировать 100% точности получаемых результатов.

  1. Выясняем почтовые сервера домена.
  2. Подключаемся к каждому почтовому серверу и проверяем наличие на нем указанного email.

Заполните поле “email для проверки” и нажмите кнопку “Запуск”.

  1. Все почтовые сервера домена сообщили, что email доступен: email доступен в почтовом домене.
  2. Все почтовые сервера домена сообщили, что email недоступен: email не доступен в почтовом домене.
  3. Часть почтовых серверов домена сообщили, что email доступен, а часть — что нет. Это означает, что часть почтовых серверов, сообщивших, что email на них недоступен:
    • либо неисправны,
    • либо не используются для получения сообщений (используются только для отправки),
    • либо на них используются спам-фильтры, блокирующие ответ нашему сервису.

    Инструмент предназначен для проверки интересующих электронных адресов. Для этого необходимо ввести интересующий e-mail в поле и нажать кнопку «Проверка». В результате система оповестит о существовании данного электронного адреса. Сервис отлично подходит для проверки почтовых баз.

    Рекомендуем к прочтению

    Добавить комментарий

    Ваш адрес email не будет опубликован.