Differenza tra CName e A Record

CName contro un record

I siti Web sono memorizzati in posizioni identificate in modo univoco da un gruppo di numeri, che conosciamo come indirizzi IP; ma per accedere a questi siti, di solito digitiamo i nomi di dominio corrispondenti, che sono più facili da ricordare. Per ottenere l'indirizzo IP corretto, il browser contatterà un Domain Name Server o DNS e interrogherà il suo database per l'indirizzo IP. Un record A è un tipo di record di risorse che punta direttamente all'indirizzo IP. Un record CName, o nome canonico, è anche un record di risorse, ma non punta a un indirizzo IP. Invece, punta a un altro indirizzo di dominio.

Sebbene il punto di avere un DNS sia quello di ottenere l'indirizzo IP di un determinato dominio, viene utilizzato un record CName per identificare più nomi di dominio che puntano allo stesso indirizzo IP. Esistono molti usi per i record CName, ma il più importante è quando si utilizzano più servizi in esecuzione sulla stessa macchina o host. Un server FTP avrà un nome di dominio ftp.example.com, mentre un server http utilizzerà www.esempio.com. Nonostante ciò, useranno lo stesso indirizzo IP. Pertanto, nel database sarà presente anche una voce CName per ftp.example.com, che rimanda a www.example.com. Quando si cerca l'indirizzo IP di ftp.example.com, viene rilevato il record CName e la query viene riavviata utilizzando il nuovo nome di dominio. Questa procedura viene ripetuta fino a quando viene rilevato un record A che fornisce l'indirizzo IP ricercato. In questo modo, è necessario un solo record A che punta al giusto indirizzo IP.

Un record CName è molto utile, ma può anche creare un problema che è sistematico alla sua progettazione. Dati i nomi di dominio di esempio forniti sopra, è possibile che esistano due record CName, dove ftp punta a www per il primo e al contrario per la seconda voce. Quando la query viene riavviata una volta trovata una voce CName, avere queste due voci comporterà un ciclo infinito che potrebbe causare il crash del server. Un record non ha questo problema, in quanto non punta a un altro nome di dominio.

Sommario:

1. Un CName punta a un nome di dominio, mentre un record A punta a un indirizzo IPv4.

2. Trovando un record CName si genera una nuova ricerca, mentre non si trova un record A.

3. I record CName impropri possono causare un loop infinito, ma A Records no.