Hvad er et kanonisk navn?
Et kanonisk navn er et udtryk, der bruges i computernetværkssamarbejde til at identificere en computers faktiske navn inden for internetnavningssystemet. Det bruges ofte som henvisning til en ressourcepost i domænenavnsystemet (DNS), der er ansvarlig for at oversætte obskure internetprotokol (IP) adresser til mere genkendelige navne. I dette tilfælde kaldes ressourceposten i DNS CNAME og giver mulighed for et andet navn eller alias til at pege på det rigtige navn på computeren.
Når for eksempel en computer leder efter et websted, kontrollerer den navnet, der er indtastet i webbrowseren, mod specielle servere, der er vært for DNS-posterne. Hvis det navn, der bliver slået op i DNS-posterne, er specificeret i en CNAME-post, modtager det det kanoniske navn og udfører derefter et andet opslag mod det kanoniske navn for at løse IP-adressen på værtscomputeren. Et temmelig almindeligt eksempel er, når en enkelt computer er vært for flere tjenester, såsom et websted og en FTP-tjeneste (File Transfer Protocol) til overførsel af data.
I en webbrowser kan en bruger indtaste www.example.com. Under DNS-opslag støder det på det kanoniske navn i en CNAME-post, der peger på en server ved navn foo.example.com. En anden bruger kan derefter bruge en FTP-klient og indtaste adressen på FTP-serveren på ftp.example.com. DNS-opslag støder på en anden CNAME-post, der også peger på foo.example.com, den nøjagtige samme værtsmaskine, der bruges til webstedet. I dette tilfælde fik DNS dog to forskellige navne, hvilket førte til serverens kanoniske navn.
I et af ovenstående tilfælde udfører DNS derefter en anden opslag for det kanoniske navn for at løse dens IP-adresse på netværket. IP-adressen sendes derefter tilbage til computeren, der opretter web- eller FTP-anmodning, så datapakkerne kan begynde at flyde. Dette åbner naturligvis flere muligheder for netværksadministratorer til at bruge DNS CNAME-posterne på andre måder. En anden almindelig teknik, der bruges af webstedshostingstjenester giver mulighed for en enkelt værtscomputer til at køre flere webservere, hver med et andet navn.
På grund af den sarte natur af DNS er der imidlertid en række farer ved at implementere kanoniske navne med CNAME-poster, og der er derfor begrænsninger for brugen af det. Det farligste er potentialet for at oprette en uendelig sløjfe under et navns opslag, og derfor skal ingen CNAME-poster pege på en anden CNAME-post. Hvis der for eksempel bruges to CNAME-poster, hvor www.example.com peger på det kanoniske navn foo.example.com, og derefter foo.example.com peger tilbage til www.example.com, kontrollerer opslaget uendeligt et navn mod den anden.