Что такое MX-запись?
MX (Mail Exchange) — тип записи DNS, указывающий, какие почтовые серверы принимают почту для домена. Когда отправитель посылает письмо на [email protected], его сервер запрашивает MX-записи example.com и определяет, куда доставить сообщение.
Как работают MX-записи
Процесс доставки почты:
1. Отправитель составляет письмо для [email protected]
2. Сервер отправителя запрашивает в DNS MX-записи example.com
3. DNS возвращает одну или несколько MX-записей с приоритетами
4. Отправитель подключается к почтовому серверу с наивысшим приоритетом
5. Если он недоступен, отправитель пробует сервер со следующим приоритетом
6. Письмо доставляется или ставится в очередь для повторной попытки
Формат MX-записи
example.com. IN MX 10 mail.example.com.
example.com. IN MX 20 mail-backup.example.com.
Компоненты:
- example.com. — домен, принимающий почту
- IN MX — тип записи
- 10 — приоритет (меньшее число означает более высокий приоритет)
- mail.example.com. — имя почтового сервера
Номера приоритета
Приоритет определяет порядок проверки серверов:
- 10 — основной почтовый сервер (проверяется первым)
- 20 — вторичный сервер (резерв при сбое основного)
- 30 — третичный сервер (крайний резерв)
Меньшие числа означают более высокий приоритет. Во многих конфигурациях используют шаг 10, чтобы позже можно было вставить дополнительные серверы.
Распространённые конфигурации MX
Самостоятельный хостинг почты
@ IN MX 10 mail.example.com.
mail IN A 203.0.113.50
Рабочая почта Google Workspace
@ IN MX 1 aspmx.l.google.com.
@ IN MX 5 alt1.aspmx.l.google.com.
@ IN MX 5 alt2.aspmx.l.google.com.
@ IN MX 10 alt3.aspmx.l.google.com.
@ IN MX 10 alt4.aspmx.l.google.com.
Microsoft 365
@ IN MX 0 example-com.mail.protection.outlook.com.
Почта Zoho Mail
@ IN MX 10 mx.zoho.com.
@ IN MX 20 mx2.zoho.com.
@ IN MX 50 mx3.zoho.com.
Требования к MX-записям
Цель должна быть именем хоста
MX-записи должны указывать на имена хостов, а не на IP-адреса:
# Correct
@ IN MX 10 mail.example.com.
# Incorrect - won't work
@ IN MX 10 203.0.113.50
Цель должна иметь запись A или AAAA
Имя почтового сервера должно разрешаться в IP-адрес:
@ IN MX 10 mail.example.com.
mail IN A 203.0.113.50
Нельзя использовать цель CNAME
MX-записи не должны указывать на CNAME-записи (RFC 2181):
# Avoid this
mail IN CNAME host.provider.com.
@ IN MX 10 mail.example.com.
Проверка MX-записей
С помощью dig:dig example.com MX
; ANSWER SECTION:
example.com. 300 IN MX 10 mail.example.com.
example.com. 300 IN MX 20 mail-backup.example.com.
С помощью DomScan:
curl "https://domscan.net/v1/health?domain=example.com"
# Returns hasMX: true/false in DNS details
MX-записи и безопасность почты
MX работают вместе с другими записями аутентификации почты:
| Запись | Назначение |
|---|---|
| MX | Маршрутизация входящей почты |
| SPF | Разрешение серверов отправки |
| DKIM | Подпись исходящих сообщений |
| DMARC | Применение политики |
Для корректной работы почты и доставки следует настроить все четыре записи.
Устранение проблем MX
Нет MX-записей
Если MX-записей нет, некоторые серверы используют поиск записи A, но это ненадёжно. Всегда настраивайте явные MX-записи.
Неправильный приоритет
Если у резервного сервера приоритет ниже, то есть число выше, чем предполагалось, он не будет получать почту, пока основной сервер не выйдет из строя.
Ошибка разрешения имени хоста
Если имя хоста цели MX не разрешается, доставка почты завершается ошибкой. Проверьте наличие A-записей для имён почтовых серверов.
Учёт TTL
При миграции между почтовыми провайдерами заранее уменьшите TTL MX-записей для ускорения распространения, а после миграции верните обычные значения.
Лучшие практики
1. Всегда настраивайте MX-записи: не полагайтесь на резервный поиск A-записи
2. Настраивайте резервные серверы: используйте несколько MX с разными приоритетами
3. Проверяйте разрешение цели: у имён почтовых серверов должны быть A-записи
4. Внедряйте аутентификацию почты: добавляйте SPF, DKIM и DMARC вместе с MX
5. Контролируйте доставку почты: используйте инструменты для проверки MX-конфигурации