Цитата:
Сообщение от
BokarevSS
Как реализовать команду ping из аксапты. Для проверки правильно ли введен адрес сайта?
Цитата:
Сообщение от
BokarevSS
Мне необходимо проверить введеный email, и для этого я хочу хотя бы выяснить, правильно ли введен почтовик.
Объясните, пожалуйста, почему правильность ввода email нужно проверять с помощью ping'а? Ping использует протокол ICMP, предназначенный для мониторинга и управления сетью, а корректность введенного адреса email зависит скорее от протокола DNS. В рамках DNS может быть несколько записей для одного итого же имени, в т.ч. A-запись и MX-запись, причем они могут ссылаться на совершенно разные IP-адреса. В общем случае используется A-запись (в т.ч. ping использует ее), но для отправки почты нужна именно MX-запись. Если есть даже такое доменное имя (A-запись), но нет MX-записи, то почта по этому доменному имени никуда не уйдет. Если есть MX-запись и по соответствующему адресу исправно работает SMTP-сервер, то там может быть отключена отправка ICMP-пакетов вовне, иными словами, этот сервер будет принимать от вас почту, но не будет отвечать вам на ping'и.
Кроме того, даже при корректном доменном имени после @ название почтового ящика может быть задано некорректно, и тогда что толку от этих всех проверок доменного имени?
PS. Для примера посмотрите на то, что говорит nslookup (а он более уместен для проверок DNS-имен, чем ping) в случае mail.ru:
Код:
C:\>nslookup mail.ru
Name: mail.ru
Addresses: 94.100.180.201
217.69.139.199
217.69.139.201
94.100.180.199
C:\>nslookup -q=mx mail.ru
mail.ru MX preference = 10, mail exchanger = mxs.mail.ru
mxs.mail.ru internet address = 94.100.176.20
Адреса совершенно разные, в моем случае ping подхватывает 94.100.180.201, при том что этот адрес к именно SMTP-серверу mail.ru никак не относится.