Как проверить, принадлежит ли адрес электронной почты Gmail - PullRequest
3 голосов
/ 13 октября 2011

Я создаю функцию, которая использует API Google для импорта контактов из учетной записи пользователя gmail.Однако я знаю, что многие компании регистрируются в Google, чтобы иметь более профессиональное доменное имя (например, some_name@bislr.com), но все еще принадлежит Gmail.

Есть ли способ проверить это??

Ответы [ 2 ]

3 голосов
/ 13 октября 2011

Вариант 1

Если вы выполните поиск DNS для записей MX на bislr.com, вы получите следующее:

$ host -t mx bislr.com
bislr.com mail is handled by 10 aspmx.l.google.com.
bislr.com mail is handled by 20 alt1.aspmx.l.google.com.
bislr.com mail is handled by 20 alt2.aspmx.l.google.com.
bislr.com mail is handled by 30 aspmx2.googlemail.com.
bislr.com mail is handled by 30 aspmx3.googlemail.com.
bislr.com mail is handled by 30 aspmx4.googlemail.com.
bislr.com mail is handled by 30 aspmx5.googlemail.com.

Любой, кто размещает свою электронную почтуВ Google Apps записи MX будут очень похожи на эти.Вы можете выполнить поиск MX с помощью любого распространенного механизма DNS и протестировать записи MX для наиболее рекомендуемых почтовых серверов Google - aspmx.l.google.com, alt1.aspmx.l.google.com и alt2.aspmx.l.google..com или найдите любой / все серверы в этом списке.

Это не покажет вам никого, кто использует внешнюю службу пересылки / фильтрации, но будет работать для всех распространенных случаев.

Опция 2

Вы можете подключиться к почтовому серверу, чтобы проверить, будет ли он принимать почту на определенный адрес.Используя это, мы можем подключиться к asmpx.l.google.com и спросить его, является ли адрес действительной учетной записью Google Mail.

Если вы подключаетесь к aspmx.l.google.com:25 и отправляете эту строку(замените адреса электронной почты соответствующим образом):

HELO
MAIL FROM:<ping@mydomain.com>
RCPT TO:<user@theirdomain.com>

Почтовый сервер Google ответит кодом состояния smtp, возможно, строкой, начинающейся с чего-то вроде 250 2.1.5 OK, если это правильный адрес.Это более чистый и гораздо более надежный способ, чем простая проверка DNS-записей, и он должен работать до тех пор, пока вы не получите проверочный IP-адрес в черном списке, используя его для отправки фактического спама в gmail.это полное прохождение процесса.

2 голосов
/ 16 октября 2011

Вы не можете быть уверены.

Проверка записи MX, описанная @lunixbochs, охватывает большинство случаев, но многие корпорации будут использовать Postini, которая имеет разные доменные имена.Они также могут использовать любое количество других механизмов предварительной обработки почты, которые будут скрывать записи aspmx.

Еще один способ проверить, есть ли у них активное доменное имя:

curlhttp://www.google.com/a/DOMAINNAME |grep "домен, который не использует Google Apps"

Используйте выбранный вами язык / библиотеку вместо curl, чтобы получить URL ...

...