To jest kanoniczne pytanie o CNAME na wierzchołkach (lub korzeniach) stref
Stosunkowo powszechnie wiadomo, że CNAME
zapisy na szczycie domeny są praktyką tabu.
Przykład:
example.com. IN CNAME ithurts.example.net.
W najlepszym przypadku oprogramowanie serwera nazw może odmówić załadowania konfiguracji, aw najgorszym przypadku może zaakceptować tę konfigurację i unieważnić konfigurację na przykład.com.
Ostatnio miałem firmę hostingową, która przekazała instrukcje jednostce biznesowej, która była nam potrzebna do CNAME wierzchołka naszej domeny do nowego rekordu. Wiedząc, że byłaby to konfiguracja samobójcza po karmieniu BIND, poradziłam im, że nie będziemy w stanie się zastosować i że jest to ogólnie porada prycza. Firma zajmująca się hostingiem przyjęła stanowisko, że nie jest to absolutnie zabronione przez standardowe definiowanie RFC i że ich oprogramowanie to obsługuje. Gdybyśmy nie mogli CNAME wierzchołka, ich radą było, aby w ogóle nie mieć rekordu wierzchołka i nie zapewniliby serwera przekierowującego. ...Co?
Większość z nas wie, że RFC1912 nalega na to A CNAME record is not allowed to coexist with any other data.
, ale bądźmy szczerzy tutaj, że RFC ma jedynie charakter informacyjny. Najbliższe znane mi słowo, które zabrania praktyki, pochodzi z RFC1034 :
Jeśli CNAME RR jest obecny w węźle, żadne inne dane nie powinny być obecne; zapewnia to, że dane dla nazwy kanonicznej i jej aliasów nie mogą się różnić.
Niestety, jestem w branży wystarczająco długo, aby wiedzieć, że „nie powinien” to nie to samo, co „nie wolno”, i to wystarczy, aby większość projektantów oprogramowania mogła się zawiesić. Wiedząc, że nic poza zwięzłym linkiem do slamowego wsadu byłoby stratą mojego czasu, w końcu pozwoliłem firmie uniknąć zbesztania za zalecanie konfiguracji, które mogłyby zepsuć powszechnie używane oprogramowanie bez odpowiedniego ujawnienia.
To prowadzi nas do pytań i odpowiedzi. Tym razem chciałbym, abyśmy naprawdę spytali o szaleństwo wierzchołków CNAME, a nie omijali tego problemu, jak to zwykle bywa, gdy ktoś pisze na ten temat. RFC1912 jest poza limitem, podobnie jak inne informacyjne RFC obowiązujące tutaj, o których nie myślałem. Zamknijmy to dziecko.