Назад | Перейти на главную страницу

Запись MX указывает на себя, возможно?

Допустим, у меня активен следующий DNS для домена example.com (без приоритета и ttl)

   example.com A    123.45.67.89
mx.example.com A    123.45.67.89
   example.com MX   mx.example.com

Теперь это действительная запись DNS. Если бы я добавил следующую запись mx, возникли бы проблемы?

mx.example.com MX   mx.example.com

Я протестировал это, и, похоже, он работает, но я хочу быть уверенным.

Причина в том, что я всегда использовал mailaddress@mx.example.com для электронной почты без добавления этой последней записи mx. Но некоторые службы не работают, потому что они не используют основной домен, а скорее проверяют наличие субдомена, если эта запись mx присутствует. Кажется, что добавление записи mx для всех двух служб работает, но теперь я беспокоюсь, что это может вызвать проблемы с отправкой / получением электронной почты.

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

MX RR, указывающий на себя, абсолютно действителен и не вызовет проблем. Однако это можно считать избыточным из-за общего правила, согласно которому, если у доменного имени нет MX RR, но есть A RR, последняя должна использоваться для доставки почты. Другими словами, MX RR, указывающая на себя, неявно предполагается, когда нет явной MX RR.

Обратите внимание, что в вашем примере кода есть синтаксические проблемы. В полных доменных именах отсутствуют конечные точки, а в записях MX RR отсутствуют поля приоритета. Его следует читать:

   example.com.    A    123.45.67.89
   mx.example.com. A    123.45.67.89
   example.com.    MX   10 mx.example.com.
   mx.example.com. MX   10 mx.example.com.

или, что эквивалентно:

   $ORIGIN example.com.
   @               A    123.45.67.89
                   MX   10 mx
   mx              A    123.45.67.89
                   MX   10 mx

(The $ORIGIN директива является избыточной, если целиком является частью файла зоны для домена example.com.)

Вы как будто запутались. Формат DNS MX-RR domain MX pref name используется, чтобы сказать, что сервер с именем name будет MX для домена domain.

В вашем случае вы говорите, что сервер с именем mx.example.com будет обрабатывать почту для mx.example.com домен. Это совершенно верно, но мне кажется, что вы хотите настроить MX для example.com.

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

  1. Не существует «второй записи MX с более низким приоритетом», приоритеты записей MX ограничены именами, оба имени в вашем примере имеют только по одному MX, так что приоритет не имеет никаких последствий. MTA ищет записи MX именно для той части хоста, которой он пытается доставить, и ничего больше (кроме поиска A / AAAA, если поиск MX дает нулевые записи результатов).
  2. Кроме того, запись MX не «указывает на себя» - она ​​содержит только то же имя хоста, под которым она хранится, но это имя указывает на записи A и AAAA, которые отличаются от записи MX, хранящейся под тем же именем. В DNS вы можете хранить любое количество разных записей под одним и тем же именем, и нет ничего плохого в том, что одна запись под одним именем указывает на другую запись под тем же именем - единственное, что не является хорошей идеей, это на самом деле указывать на одно и то же. запись, например, запись CNAME с собственным именем в ней, которая, в свою очередь, будет указывать на ту же запись CNAME и т. д. до бесконечности.