Итак, я понимаю, что записи A указывают на IP, а записи CNAME - это просто указатели на другие записи A / CNAME. В чем недостаток использования только записей A. Записи CNAME предназначены только для удобства и организации? Например, 5 поддоменов, использующих записи A, указывающие на один и тот же IP-адрес вместо CNAMES для основного домена.
Если у вас есть контроль, все записи лучше - быстрее разрешаются и просты для понимания.
CNAMES заполняют нишу, в которой вы указываете на ресурс, который вы не полностью контролируете.
Стоит отметить, что CNAMES НЕ являются «записями - просто указателями на другие записи A / CNAME» - и, хотя это часто встречается и их поведение часто схоже, это недоразумение имеет непредвиденные последствия. CNAME означает каноническое имя - оно сопоставляет себя и все, что находится слева от него, в другой домен. Таким образом, например, если у вас есть записи MX и записи CNAME на одном уровне, записи MX будут проигнорированы.
Обычно я рекомендую настройку DNS для присвоения имен хостов A-записям и именам служб CNAME, предположим, что у вас есть домен domain.com, а оттуда у вас есть серверы host01 ~ host99 и имена служб www или mongodb.
Прежде всего, будет намного лучше, если вы настроите клиентов mongodb для подключения к нему через mongodb.domain.com, если вам когда-нибудь понадобится переключить хосты mongodb с host31.domain.com к host45.domain.com вам не нужен IP Switcheroo, просто обновите свой DNS, и все в порядке.
Сейчас если mongodb.domain.com указывает на тот же IP-адрес, что и, скажем, host45.domain.com и однажды тебе нужно переехать host45 из Далласа в Рио-де-Жанейро, поэтому необходим новый IP-адрес, вам придется обновить все несвязанные имена хостов (mongodb.domain.com, rabbitmq.domain.com, primary-mdb.domain.com, rs1-mdb.domain.comи т. д.), чтобы отразить это изменение IP одновременно с host45.domain.com, через неделю об этом обязательно забудут и он станет ИТ-инцидентом.
С другой стороны, если вы разместили mongodb.domain.com CNAME host45.domain.com все, что вам нужно сделать, это обновить host45Рекорд, все остальное приложится.
Как указывает @davidgo, хосты, которым вы не владеете SOA, также могут изменить свои IP-адреса, поэтому google.domain.com должен CNAME www.google.com вместо того А 172.217.28.4.
Я именно этим и занимаюсь, я надеюсь, что помог вам, ребята, упростить управление ИТ.