Це канонічне запитання про CNAMEs в апліках (або коренях) зон
Відносно загальновідомо, що CNAME
записи на вершині домену - це табу.
Приклад:
example.com. IN CNAME ithurts.example.net.
У кращому випадку програмне забезпечення серверів імен може відмовитись у завантаженні конфігурації, а в гіршому випадку може прийняти цю конфігурацію та визнати недійсною конфігурацію для example.com.
Нещодавно у мене компанія, що розмістила веб-хостинг, передала інструкції бізнес-підрозділу, який нам потрібен для того, щоб CNAME вершину нашого домену підписати на новий запис. Знаючи, що це буде конфігурація самогубства, коли його подають у BIND, я порадив їм, що ми не зможемо їх виконати, і що це загальна рада. Компанія, що розмістила веб-хостинг, виступила з позицією, що це прямо не заборонено стандартним визначенням RFC і що їх програмне забезпечення підтримує це. Якби ми не змогли CNAME вершини, їхня порада полягала в тому, щоб взагалі не було записано верхівку, і вони не нададуть веб-сервер для перенаправлення. ...Що?
Більшість з нас знає, що RFC1912 наполягає на цьому A CNAME record is not allowed to coexist with any other data.
, але давайте бути чесними з собою тут, що RFC є лише Інформаційним. Найближчий я знаю до думки, що забороняє практикуватися з RFC1034 :
Якщо RAME CNAME присутній у вузлі, інших даних не повинно бути; це гарантує, що дані для канонічного імені та його псевдонімів не можуть бути різними.
На жаль, я досить довго працював у цій галузі, щоб знати, що "не слід" - це не те саме, що "не повинен", і цього достатньо канату для більшості розробників програмного забезпечення. Знаючи, що все, що є коротким, ніж стисле посилання на каламбур, буде марною тратою мого часу, я в кінцевому підсумку дозволив компанії піти з лаяння за рекомендації конфігурацій, які можуть зламати часто використовуване програмне забезпечення без належного розкриття.
Це приводить нас до запитання. Колись я хотів би, щоб ми по- справжньому дізналися про божевілля вершин CNAME, а не спідниці навколо проблеми, як це ми зазвичай робимо, коли хтось публікує цю тему. RFC1912 поза межами, як і будь-яка інша інформаційна RFC, застосована тут, про яку я не думав. Давайте закриємо цю дитину.