La differenza tra ALIAS e CNAME e quando utilizzarli
28 febbraio 2024
3 min di lettura

La differenza principale tra un record CNAME e un record ALIAS non risiede nel risultato, poiché entrambi puntano a un altro record DNS, ma dal modo in cui risolvono il record DNS di destinazione durante una query. A causa di questa differenza, l'uso di uno di essi è sicuro all'apex di zona (ad esempio, un dominio nudo come example.com), mentre l'altro no.

Iniziamo con il tipo di record CNAME. Questo record indirizza un nome DNS, come www.example.com, a un altro nome DNS, come lb.example.net. Ciò indica al risolutore di cercare la risposta al nome di riferimento per tutti i tipi di DNS (ad esempio A, AAAA, MX, NS, SOA e altri). Ne consegue una riduzione delle prestazioni, poiché è necessario eseguire almeno un'ulteriore ricerca DNS per raggiungere l'obiettivo (lb.example.net). Nel caso in cui nessuno dei due record sia mai stato interrogato in precedenza dal risolutore ricorsivo, il processo richiede ancora più tempo, poiché è possibile che venga attraversata l'intera gerarchia DNS per entrambi i record:

  1. Come client DNS (o risolutore stub) interroghi il risolutore ricorsivo per www.example.com.
  2. Il risolutore ricorsivo interroga il server dei nomi radice per www.example.com.
  3. Il server dei nomi radice indirizza il tuo risolutore ricorsivo al server autorevole di dominio di primo livello (TLD) .net
  4. Il risolutore ricorsivo interroga il server autorevole TLD .com per www.example.com.
  5. Il server autorevole TLD .com rimanda il tuo server ricorsivo ai server autorevoli per example.com.
  6. Il risolutore ricorsivo interroga i server autorevoli per www.example.com e riceve lb.example.net come risposta.
  7. Il risolutore ricorsivo memorizza nella cache la risposta e te la invia.
  8. Ora invii una seconda query al risolutore ricorsivo per lb.example.net.
  9. Il risolutore ricorsivo interroga il server dei nomi radice per lb.example.net.
  10. Il server dei nomi radice indirizza il tuo risolutore ricorsivo al server autorevole di dominio di primo livello (TLD) .net
  11. Il risolutore ricorsivo interroga il server autorevole TLD .net per lb.example.net.
  12. Il server autorevole TLD .net indirizza il tuo server ricorsivo ai server autorevoli per example.net.
  13. Il risolutore ricorsivo interroga i server autorevoli per lb.example.net e riceve un indirizzo IP come risposta.
  14. Il risolutore ricorsivo memorizza nella cache la risposta e te la invia.

L'esecuzione di ognuno di questi passaggi richiede almeno diversi millisecondi e spesso di più, a seconda delle condizioni di rete. Ciò fa sì che a volte si debba attendere molto tempo per ricevere la risposta definitiva e fruibile di un indirizzo IP.

Nel caso di un record ALIAS, vengono eseguite le stesse azioni del CNAME, ad eccezione del fatto che il server autorevole per example.com esegue i passaggi da sei a tredici per l'utente e invia la risposta finale sia come indirizzo IPv4 che IPv6. Ciò comporta due vantaggi e uno svantaggio significativo:

Vantaggi

Velocità di formulazione della risposta finale più rapida

Nella maggior parte dei casi, i server autorevoli di example.com avranno la risposta nella cache e quindi potranno inviare la risposta molto rapidamente.

La risposta alias sarà costituita dai record A e AAAA. Poiché un record ALIAS invia la risposta che comprende uno o più indirizzi IP, può essere utilizzato ovunque sia possibile utilizzare un record A o AAAA, incluso l'apex di zona. Questo lo rende più flessibile di un CNAME, che non può essere utilizzato all'apex di zona. La flessibilità del record Alias è necessaria quando il tuo sito viene pubblicato su alcuni dei CDN più popolari che richiedono l'uso di record CNAME se vuoi che i tuoi utenti possano accedervi tramite il dominio nudo, come example.com.

Svantaggi

Le informazioni di geotargeting vengono perdute

Poiché è il server autorevole per example.com che emette le query per lb.example.net, qualsiasi funzionalità di routing intelligente nel record lb.example.net agirà sulla posizione del server autorevole, non sulla tua posizione. L'opzione EDNS0 edns-client-subnet, in questo caso, non si applica. Ciò significa che potresti ricevere un indirizzamento errato: ad esempio, se ti trovi a New York e il server autorevole di example.com è in California, lb.example.com crederà che tu sia in California e invierà una risposta decisamente non ottimale per te a New York. Tuttavia, se utilizzi un provider DNS con POP in tutto il mondo, è probabile che il server DNS autorevole si trovi nella sua regione, rendendo così il problema meno grave.

Un fatto importante da notare è che NS1 comprime i record CNAME, a condizione che tutti rientrino nel sistema NS1. I nameserver di NS1 sono autorevoli sia per il CNAME che per il record di destinazione. Per "comprimere" si intende semplicemente che il nameserver NS1 restituirà l'intera catena di record, da CNAME alla risposta finale, in un'unica risposta. In questo modo si eliminano tutti gli ulteriori passaggi di ricerca e potrai utilizzare i record CNAME, anche in una configurazione nidificata, senza alcuna riduzione delle prestazioni.

E ancor meglio, NS1 supporta un tipo di record unico, il record collegato. Si tratta fondamentalmente di un collegamento simbolico all'interno della nostra piattaforma che funge da record ALIAS, ma con una velocità di risoluzione inferiore al microsecondo. Per utilizzare un record collegato, crei semplicemente il record di destinazione come al solito (può essere di qualsiasi tipo), quindi crei un secondo record che vi indirizzi e selezioni l'opzione Record collegato. Ricorda che i Record collegati possono superare i confini dei domini (zone) e persino i confini degli account all'interno di NS1 e consentono di organizzare e ottimizzare la struttura dei record DNS in modo efficace.

CNAME, ALIAS e grafico di riferimento dei record collegati
 CNAMEALIASRecord collegato
Utilizzo all'apex?NoSì (solo per altre zone NS1)
Velocità relativa (TTFB)VeloceReportistica finanziariaReportistica finanziaria
Comprime le risposteSì (funzione esclusiva di NS1 Connect)
Scorri per visualizzare la tabella completa
Autore
Terry Bernstein Senior Director of Product Management for NS1 Managed DNS