Overview DNS

DNS, acronimo di Domain Name System, strutturato come un database si occupa della risoluzione dei nomi di dominio (es. www.esempio.com) nei loro corrispettivi indirizzi numerici (es. 10.11.12.13) e viceversa, delle informazioni relative all'instradamento della posta e di ulteriori dati relativi a diverse applicazioni internet.

La struttura dei nomi di dominio è gerarchica, ad albero in cui la radice indica il dominio principale ed è rappresentata da un punto alla fine del nome (es. www.example.com.).

Nella maggior parte dei casi il punto finale viene omesso a parte quando ci si appresta a editare i file delle zone, in cui è importante specificarlo per far capire al server i limiti della zona su cui ha autorità.

I dati che un DNS gestisce sono identificati in nomi di dominio e organizzati in una struttura ad albero. Ogni nodo dell'albero corrisponde a un dominio e ne viene assegnato un nome. Un nome di dominio pienamente qualificato (FQDN, Fully Qualified Domain Name) nasce dall'unione di tutti i nomi dei nodi (detti "etichette") che lo compongono, separati da un punto, a partire dal nome della macchina per arrivare al punto finale del dominio radice.

Ad esempio pc01.esempio.com è composto dal dominio com, il quale è il dominio principale (TLD, Top Level Domain), dal dominio esempio che è un sottodominio o dominio secondario di com e  per finire da pc01 che altri non è che il nome della macchina.

Per fini amministrativi ad ogni nodo che compone un nome di dominio corrisponde una zona.
Per il DNS i file delle zone contengono i riferimenti ai domini di cui il server ha competenza o eventualmente contengono i riferimenti ad altre zone a cui il server demanda il compito di risoluzione dei nomi. Queste zone a loro volta saranno competenti per tutti i loro sotto-domini.

Il DNS utilizza principalmente il protocollo UDP  per la gestione delle richieste fuorchè nei casi in cui i dati superano il limite di 512 bytes imposto dal protocollo UDP (ad esempio per un "zone transfer") in tal caso utilizza TCP. La porta utilizzata dal servizio è la 53 sia in UDP che in TCP.

Un server DNS può essere di vari tipi:
- Authoritative Server: Un DNS autoritativo per una determinata zona contiene tutti i dati relativi alle zone di sua competenza. Per un servizio quanto più invulnerabile ai fallimenti è generalmente consigliato "appoggiare" (ridondanza) le zone ad uno o più server secondari (detti slave). Il server che mantiene le copie principali dei file delle zone è detto master o primary server. Il secondary o slave server aggiorna i suoi file di zona da un'altro server attraverso una procedura detta zone transfer. Il file di zona contiene un numero seriale che va incrementato ogni volta che il file subisce una modifica in questo modo i server slave riconosceranno i cambiamenti. Generalmente li trasferisce dal primary server ma questo non è obbligatorio, se ne deduce che un server slave può essere master per un'altro/i.
- Caching Only Server: Detto anche Recursive Server effettua dei recursive lookups per conto dei client locali e inoltre mantiene una cache delle ultime richieste effettuate di modo che alla replicazione delle richieste non debba più rivolgersi all'esterno per la risoluzione. Questo ha un effetto di minor occupazione di banda e quindi anche di una maggiore velocità nelle risposte. Essendo questo tipo di DNS completamente indipendente dagli altri si appresta all'implementazione in reti protette da firewall.

Privacy Policy