я использую DNS-сервер для example.com
, с несколькими записями A / CNAME, указывающими на разные IP-адреса.
@ IN A 198.51.100.1
a IN A 198.51.100.3
b IN CNAME a
c IN A 203.0.113.12
теперь я хотел бы запустить один почтовый сервер (например, mail.example.com
) для домена верхнего уровня (joe@example.com
) и все хосты в этом домене (jane@a.example.com
, office@c.example.com
)
я вообразил что-то вроде
@ IN MX 10 mail
* IN MX 10 mail
mail IN A 203.0.113.25
теперь вышеуказанное работает достаточно хорошо для основного домена:
$ dig mx example.com | grep MX
;example.com. IN MX
example.com. IN MX 10 mail.example.com.
$
но это не работает для записей A / CNAME:
$ dig mx a.example.com | grep MX
;a.example.com. IN MX
$
вместо этого подстановочный знак *
трактуется буквально:
$ dig mx '*.example.com' | grep MX
;*.example.com. IN MX
*.example.com. 604800 IN MX 10 mail.example.com.
$
кажется, что лучше всего иметь запись MX для каждого хоста в домене:
@ IN MX 10 mail
a IN MX 10 mail
b IN MX 10 mail
c IN MX 10 mail
теперь представьте, что у меня в домене сотни хостов ... добавление идентичной записи MX для каждого из них кажется весьма подверженным ошибкам.
есть ли способ указать одну запись MX для всех записей A / CNAME домена?
Мне известны похожие вопросы по сбоям сервера, например Запись MX для субдоменов, но ответ, похоже, относится только к случаю, когда все хосты разрешаются на один и тот же IP-адрес, который не дело здесь.
;; I cannot use this!
@ IN A 198.51.100.3
* IN CNAME @
если есть такой способ, можно ли также указать записи MX для определенных записей? например все хосты должны использовать mail.example.com
, только c.example.com
должен использовать mail.c.example.com
?
Подводя итог, я бы хотел избежать MX
запись для каждого A
/CNAME
запись в моем домене.
например я бы хотел избегать последующий:
@ IN A 198.51.100.1
@ IN MX 10 mail
a IN A 198.51.100.3
a IN MX 10 mail
b IN CNAME a
b IN MX 10 mail
c IN A 203.0.113.12
c IN MX 10 mail
mail IN A 203.0.113.25
Подстановочные знаки применяются только к полным доменным именам, которые не существуют ни в каком виде RR. Поскольку у вас есть запись A для «a.example.com», подстановочный знак любого типа RR никогда не будет соответствовать «a.example.com». Похоже, вы уже на вершине альтернативы; в основном вручную генерировать каждую запись или использовать какую-то запутанную систему включения.
Еще одна вещь, о которой стоит упомянуть, если у домена нет записи MX, но есть запись A, почтовый обменник должен попробуйте эту запись для электронной почты. Все основные программы электронной почты, которые я видел, делают это.