CNAME в порядке для основной записи DNS?
Я настроил службу хостинга, и в рамках этой службы мне нужно автоматически создавать записи DNS на наших серверах имен для всех размещенных доменов.
В настоящее время я использую следующий шаблон:
;
; [USER] - [DOMAIN]
;
$TTL 604800
@ IN SOA [PRIMARY-NS]. [NS-ADMIN]. (
[SERIAL] ; Serial
10800 ; Refresh
3600 ; Retry
1209600 ; Expire
43200 ; Negative Cache TTL
)
;
@ IN NS [NS1]. ; Nameserver
@ IN NS [NS2]. ; Nameserver
@ IN A [SERVER-IP] ; Primary IP
* IN A [CATCH-ALL-IP] ; Catch-all IP
@ IN MX 0 mail
Что меня интересует, так это то, что если я заменю основной оператор записи A CNAME на запись DNS этого сервера, будут ли какие-либо неблагоприятные последствия? Это значительно упростит управление IP на моих серверах, так как мне потребуется обновить только одну запись DNS.
@ IN CNAME [SERVER-DOMAIN-NAME]
* IN CNAME [SERVER-DOMAIN-NAME]
Это хорошая идея? Или это только вызовет проблемы с поиском DNS на этих записях?
2 ответа
Нет нельзя
@ IN CNAME ...
поскольку CNAME
тип записи не может сосуществовать с (обязательно) SOA
а также NS
записи, которые вы должны иметь на вершине своей зоны (или любой другой тип записи ресурса, в этом отношении, за исключением записей, связанных с DNSSEC).
См. S3.6.2 RFC 1034:
Если CNAME RR присутствует на узле, никакие другие данные не должны присутствовать; это гарантирует, что данные для канонического имени и его псевдонимов не могут быть разными. Это правило также гарантирует, что кэшированное CNAME можно использовать без проверки на доверенном сервере других типов RR.
Нет! Это не сработает, так как CNAME разрешит "доменное имя" в значении друг, и вы не можете установить с вашим сервером IP. Вы можете добавить 1 A запись для IP-адреса (* @ XXXX.XXXX.XXXX.XXXX) и добавить запись CNAME для www