Potrzebuję tego do równoważenia obciążenia. Na przykład mam dwa konta magazynu Lazur (powiedzmy a
i b
) i adresy obiektów blob dla nich to a.blob.core.windows.net
i b.blob.core.windows.net
. Oba przechowują identyczne dane. Teraz muszę podać jedną nazwę zewnętrzną (powiedzmy example.com
), która wskazuje oba konta magazynu i powinna działać w trybie round robin. Można to osiągnąć, jeśli utworzę dwa wpisy CNAME w DNS w następujący sposób i rozwiąże jeden z nich w trybie okradania.
example.com
CNAMEa.blob.core.windows.net
example.com
CNAMEb.blob.core.windows.net
Ale nie mogę utworzyć dwóch rekordów CNAME dla jednej nazwy na serwerze DNS systemu Windows.
Czy to w ogóle możliwe?
domain-name-system
cname-record
Raghuram Murthy P.
źródło
źródło
core.windows.net
, że podejrzewam podobną sytuację na platformie Azure lub coś w tym rodzaju.Odpowiedzi:
Wiele rekordów CNAME dla tej samej w pełni kwalifikowanej nazwy domeny stanowi naruszenie specyfikacji DNS. Niektóre wersje BIND pozwoliłyby ci to zrobić (niektóre tylko pod warunkiem, że podałeś tę
multiple-cnames yes
opcję) i obejmowałyby równoważenie obciążenia między tymi czasami, ale nie jest to technicznie legalne.Nie powinny istnieć rekordy zasobów (RR) o tej samej nazwie co CNAME i, aby wybrać gnidy, które zawierałyby wiele identycznych CNAME. Quoth RFC 1034, sekcja 3.6.2:
Metodą RFC do obsługi tego, co robisz, byłaby pojedyncza CNAME odnosząca się do rekordu „A” z równoważeniem obciążenia.
źródło
Nie możesz. Nazwa CNAME powoduje, że jeden rekord rejestruje inną nazwę dla innej. Gdyby rekord mógł zawierać CNAMES dla dwóch nazw, nie byłby to inny dla żadnego z nich, ale nazwa dla czegoś zupełnie nowego, co spowodowałoby, że wpis CNAME byłby nieodpowiedni.
Jest jednak prawdopodobnie dobry sposób na rozwiązanie twojego zewnętrznego problemu. Na przykład możesz mieć wiele rekordów A.
źródło