Примеры запроса MX-записи
С помощью утилиты host в UNIX-подобных ОС
С помощью утилиты host в ОС GNU/Linux, FreeBSD и т. п. запросим запись MX для домена wikipedia.org.
$ host -t mx wikipedia.org. wikipedia.org mail is handled by 50 lists.wikimedia.org. wikipedia.org mail is handled by 10 mchenry.wikimedia.org.
Здесь список почтовых серверов, обслуживающих почту домена, представлен двумя хостами: lists.wikimedia.org и mchenry.wikimedia.org. MX-приоритеты у них 50 и 10 соответственно. Таким образом, при попытке доставить почту адресату в домене wikipedia.org первым будет выбран сервер mchenry.wikimedia.org.
С помощью утилиты nslookup
С помощью утилиты nslookup в ОС семейства Microsoft Windows запросим запись MX для домена wikipedia.org.
C:\>nslookup -type=mx wikipedia.org ns2.wikimedia.org Server: ns2.wikimedia.org Address: 91.198.174.4 wikipedia.org MX preference = 50, mail exchanger = lists.wikimedia.org wikipedia.org MX preference = 10, mail exchanger = mchenry.wikimedia.org lists.wikimedia.org internet address = 91.198.174.5 mchenry.wikimedia.org internet address = 208.80.152.186
Примечание: примерно так же работает nslookup в UNIX.
Описание
В каждой MX-записи для конкретного доменного имени (например: @wikipedia.org) хранятся два поля:
- имя почтового сервера, обслуживающего домен (например: mx1001.wikimedia.org). По данному имени с помощью A-записи будет определяться IP-адрес, поэтому A-запись должна также существовать (недопустимо вместо A использовать CNAME, так как в этом случае возможно зацикливание, подробнее описано );
- порядковый номер предпочтения этого сервера (например: 10) — используется в случаях, когда доменное имя обслуживается несколькими почтовыми серверами.
Чтобы отправить электронную почту, сервер-отправитель запрашивает у DNS-сервера MX-запись домена получателя электронного сообщения (то есть части адреса после символа «@»). В результате запроса возвращается список имён хостов почтовых серверов, принимающих входящую почту для данного домена, и номеров предпочтения для каждого из них. Сервер-отправитель затем пытается установить SMTP-соединение с одним из этих хостов, выбирая имена по порядку, начиная с наименьшего номера предпочтения, и перебирая их до тех пор, пока не удастся установить соединение. Если имеется несколько хостов с одинаковым предпочтением, то должны быть предприняты попытки установить соединение с каждым из них.
Если ни с одним сервером не удалось установить соединение, сервер-отправитель будет продолжать попытки в течение некоторого времени (в зависимости от настроек, обычно от нескольких часов до двух недель), после чего сформирует и отправит отправителю письма отчёт об ошибке.
Механизм записей MX предоставляет возможность использовать множество серверов для одного домена и упорядочивания их использования в целях уменьшения нагрузки и увеличения вероятности успешной доставки почты. Кроме того, такой механизм предоставляет возможность распределить обработку входящей почты среди нескольких физических серверов.