CNAME
Mit einem CNAME Resource Record (CNAME für eng. canonical name) wird zu einem vorhandenen DNS-Namen ein Alias-Name definiert. Links im Resource Record (RR) steht der Alias-Name und rechts der Original-Name oder in der DNS-Terminologie: der kanonische Name. Zu einem kanonischen Namen können beliebig viele Aliase definiert werden. Umgekehrt darf ein Alias-Name nur an einen kanonischen Namen verweisen.
Inhaltsverzeichnis
Aufbau
- Alias-Name
- TTL
- (TTL = Time to Live) gibt an, wie lange dieser RR in einem Cache gültig sein darf
- IN
- CNAME
- Original-Name
Im folgenden Beispiel wird zum kanonischen Namen org-nam ein Alias angelegt:
org-nam 1285 IN A 172.27.100.200 ali-nam 1285 IN CNAME org-nam
Komplexere Fälle
Zu einem kanonischen Namen können mehrere Aliase angelegt werden:
org-nam 1285 IN A 172.27.100.200 ali1-nam 1285 IN CNAME org-nam ali2-nam 1285 IN CNAME org-nam
Es ist auch nicht explizit verboten einen Alias auf einen bestehenden Alias zu definieren, also Aliase zu verketten:
org-nam 1285 IN A 172.27.100.200 ali-nam 1285 IN CNAME org-nam bli-nam 1285 IN CNAME ali-nam
Laut Standard sollen Domainnamen in RRs jedoch stets auf den kanonischen Namen zeigen. Es wird also stark davon abgeraten, dass ein CNAME RR auf einen anderen Alias zeigt. Ebenso folgt daraus zum Beispiel, dass ein MX RR nicht auf einen Alias zeigen sollte.
Es ist auch möglich, einen Alias zu einem kanonischen Namen aus einer anderen Domain zu definieren. Beispiel:
ali-nam 1285 IN CNAME neu-nam.example.net.
Nicht zulässig ist, einen Alias zu definieren, für den ein weiterer RR-Typ gleichen Namens existiert. Der Nameserver wüsste in diesem Fall nicht, wie er sich verhalten sollte. In diesem Beispiel existiert für den Namen ali-nam sowohl ein A-RR als auch ein CNAME-RR:
ali-nam 1285 IN A 192.168.1.2 ali-nam 1285 IN CNAME org-nam
Alias-Auflösung
Wenn ein Nameserver einen DNS-Request empfängt, für den ein CNAME-RR existiert, so löst er diesen selbst auf. Im obersten Beispiel erkennt der Nameserver, dass sich hinter ali-nam der kanonische Name org-nam verbirgt und löst diesen auf, d. h. er ermittelt die zugehörigen IP-Adresse 172.27.100.200.
Bei der Antwort auf einen DNS-Request wird neben der IP-Adresse auch der kanonische Name übergeben. Der Resolver kann so erkennen, dass sich seine ursprüngliche Anfrage auf einen Alias-Namen bezogen hatte.
Beispiel
Ein nslookup würde folgende Antwort liefern:
C:\>nslookup ali-nam.example.com Name: org-nam.example.com Address: 172.27.100.200 Aliases: ali-nam.example.com
Es kann natürlich passieren, dass der Nameserver einen kanonischen Namen nicht auflösen kann. In diesem Fall lässt er bei der Antwort einfach die IP-Adresse weg, und übergibt nur den kanonischen Namen. Der Resolver kann dann selbst versuchen, diesen Namen aufzulösen.
Hinweis:
Ein PTR-RR sollte niemals auf einen Alias zeigen, sondern grundsätzlich auf einen kanonischen Namen. Die meisten Nameserver akzeptieren allerdings auch PTR-RRs auf Aliase.
Korrektes Beispiel (org-nam ist ein kanonischer Name):
200.100.23.127.in-addr.arpa. IN PTR org-nam.example.com.
Inkorrektes Beispiel (ali-nam ist ein Alias):
200.100.23.127.in-addr.arpa. IN PTR ali-nam.example.com.
Links
- RFC 1035
Dieser Artikel ist aus der Wikipedia mit der dortigen Lizenz GFDL (Wikipedia) übernommen worden. Die Quelle in der Wikipedia unter CNAME ist zum Zeitpunkt der Einfügung identisch mit dem, was im Linux-Cub Wiki unter CNAME steht. Der Artikel kann gerne überarbeitet werden. Wenn der Artikel der Quelle im Wortlaut nicht mehr entspricht, kann der Baustein entfernt werden, es muss aber die Quellenangabe unten eingefügt werden. Zudem sollte dann der Bausteine Vorlage:GFDL eingefügt werden, da der Artikel dann unter diese Lizenz fällt. In der Wikipedia ist eine Liste der Autoren verfügbar. |