DNS A-Eintrag ALIASES und ANAME-Datensatzunterschiede

8

Wir haben eine Reihe von Servergruppen in AWS, die drei Server verwenden, um Websites bereitzustellen. Jeder Server oder jede Gruppe von Servern befindet sich in einem anderen Verfügbarkeitsbereich, von denen einer ein Umleitungsserver ist, während die anderen beiden die primären Server sind, auf die hinter einem elastischen Load Balancer zugegriffen wird. Wir haben endlich einen Client für die Verwendung von Route53 an Bord und haben einige Details zu Zeigezonen-Scheitelpunktdomänen bei elastischen Lastausgleichen nachgeschlagen. Die meisten DNS-Anbieter, die dies unterstützen, scheinen dies als DNS-Aliase von A-Einträgen zu bezeichnen. Einige Websites scheinen jedoch auf einen ähnlichen Datensatz zu verweisen, der als ANAME-Datensatz bezeichnet wird. Dies ist nicht der typische CNAME oder der atypische DNAME-Datensatz. Die meisten dieser Websites verweisen auch auf DNSMadeEasy simpleDNS, das es verwendet.

Was ist also der Unterschied zwischen Route53 (oder anderen) A-Datensätzen ALIASes und ANAME-Datensätzen? Ist dort eines? Hat oder sind diese in einem IEFT RFC-Implementierungsdokument enthalten oder sind sie enthalten, oder sind Alias-Datensätze alle innerhalb des Anbieters implementiert, auf dem sie verwendet werden?

[Bearbeiten]: Falscher DNS-Anbieter für die Verwendung von ANAME

dcmbrown
quelle
4
ALIAS- und ANAME- "Datensätze" werden von keinem RFC aufgenommen.
Andrew B
Dies sollte aktualisiert werden, um anzuzeigen, dass sich ANAME-Datensätze in einem Entwurf einer IETF-Arbeitsgruppe befinden: datatracker.ietf.org/doc/draft-ietf-dnsop-aname
Christopher_G_Lewis

Antworten:

10

Es sieht so aus, als wäre ANAMEes nur ein Standardname, der von DNS Made Easy erfunden wurde , um ein Serviceangebot zu beschreiben , das dem eines Route 53-Alias sehr ähnlich ist.

Ich habe die Unterschiede zwischen einem Alias ​​und einem CNAMEkürzlich bei Stack Overflow beschriebenen beschrieben , aber um es hier zusammenzufassen:

Ein DNS-Server, der mit einem CNAMEfür einen bestimmten Host bereitgestellten Server ausgestattet ist , gibt eine Überweisung aus, die den kanonischen Namen des gesuchten Hosts angibt, und erfordert häufig eine zweite Abfrage des Ursprungsauflösers, um diesen alternativen Namen nachzuschlagen. Ein Alias ​​(und wie es aussieht, ein ANAME) verwendet interne Informationen, die der DNS-Server über das "wahre" Ziel kennt, um einfach direkt auf die Anfrage zu antworten, ohne dass eine zweite Suche erforderlich ist und ohne dass die Zwischeninformationen im Internet sichtbar sind DNS-Protokollaustausch.

Darüber hinaus bietet ein Alias ​​die Möglichkeit, Informationen, die Route 53 über derzeit gültige IP-Adressen für S3-Website-Endpunkte, ELB und Cloudfront besitzt, zu verwenden, um auf A-Record-Anfragen mit maßgeblichen Informationen zu antworten in nahezu Echtzeit genau, was, wenn Sie diese Dienste nutzen, keinem anderen Anbieter zur Verfügung steht; Natürlich ist auch das Gegenteil der Fall: Ein Route 53-Alias ​​kann nicht zum Suchen und Zurückgeben von Informationen verwendet werden, die Route 53 nicht unbedingt zur Verfügung stehen. Sie können nicht einfach "irgendein" Ziel für einen Alias ​​verwenden - nur das Endpunkte der drei oben genannten Dienste oder andere Datensätze in derselben gehosteten Zone innerhalb der Route 53.

In diesem Sinne sind ein ANAMEund ein Alias ​​nicht gleichwertig, je nachdem, welcher Dienst das Back-End bereitstellt ... es sei denn, der ANAMEzeigt (intern) auf statische Informationen.

Ein ANAMEEintrag auf dem Dienst eines anderen DNS-Hosts kann nicht dieselben Funktionen wie Route 53 bereitstellen, wenn das Ziel S3, ELB oder CloudFront ist, so wie ein Alias ​​auf Route 53 keine Antworten zurückgeben kann, die auf einen anderen verweisen Randstandorte des CDN-Anbieters unter Verwendung intern verfügbarer Informationen, da die Informationen für die Infrastruktur des Anbieters nicht intern verfügbar sind. Ansonsten scheint die Funktionalität weitgehend gleich zu sein.

Michael - sqlbot
quelle
Nur eine kurze Anmerkung, dass Route 53 bis heute weder den Apex-Domain-CNAME noch eine Alternative unterstützt.
Fabien Snauwaert
@ FabienSnauwaert das ist nicht genau. Route 53 unterstützt A-Record-Aliase am Scheitelpunkt, die den Wert eines S3-, CloudFront-, ELB / ALB- oder Elastic Beanstalk-Endpunkts widerspiegeln können. Route 53 unterstützt keinen CNAME am Scheitelpunkt einer Zone und wird dies wahrscheinlich auch nie tun, da dies keine gültige Konfiguration ist.
Michael - sqlbot
1
Danke für die Klarstellung, Michael, ich weiß das zu schätzen. Ich habe versucht, auf das zu verweisen, was ALIASbei DNSimple, ANAMEbei DNS Made Easy, ANAMEbei easyDNS, ALIASbei PointDNS und CNAME(eine falsche Bezeichnung) bei CloudFlare genannt wird, und möchte sagen, dass mydomain.com (www-less) auf eine andere Domain (z. B. myapp.herokuapp) verweist. com). Soweit ich das beurteilen kann, bietet Route 53 derzeit keine solche Option. (EDIT: Ich habe dies hier über eine andere Hosting-Firma besprochen .)
Fabien Snauwaert
Das Fehlen eines CNAME im Stammverzeichnis einer Domain war ein Versehen im ursprünglichen RFC, das vor langer Zeit hätte korrigiert werden müssen. Es ist klar, dass ein CNAME im Stammverzeichnis für alle Datensatzanforderungen AUSSER einer SOA sein sollte, anstatt einen Fehler zu machen, da dies völlig eindeutig ist und einwandfrei funktioniert ... selbst mit älteren Caching-Servern (versuchen Sie es ... hacken Sie einen DNS-Server und einen CNAME von der Wurzel aus bereitstellen ... er wird aufgelöst und korrekt zwischengespeichert!).
Erik Aronesty
@ErikAronesty es ist wirklich nicht ganz eindeutig. Hacken Sie den DNS-Server und versuchen Sie dann, E-Mails an die Domain zu senden. Wer ist der Postaustauscher? Wenn Sie eine Ausnahme für SOA machen möchten, benötigen Sie eine Ausnahme für MX, TXT, NS, ... Da CNAME bedeutet, dass dieser Hostname ein Alias ​​für einen anderen ist, bedeutet dies, dass diese Datensätze nach dem anderen Hostnamen gesucht werden sollten und dies wäre normalerweise nicht sinnvoll, insbesondere für Webhosting.
Michael - sqlbot
1

Ab hier in den FAQ wird erläutert, dass ein Alias-Datensatz ein Route53-spezifischer Zeiger ist, ähnlich einem CNAME-Datensatz, aber für einen Resolver nicht sichtbar.

mortenya
quelle
Das habe ich so ziemlich erwartet. Während Sie dieses Setup nur in einem einfachen Datensatzformat testen, scheint es ungefähr wie ein Round-Robin-DNS-A-Eintrag zu funktionieren, wobei der lokale DNS den Eintrag bis zu seinem Ablauf zwischenspeichert und dann häufig auf den entgegengesetzten Datensatz umschaltet.
dcmbrown