Avanti Indietro Indice

2. Introduzione

Cos'è e cosa non è.

DNS è il Domain Name System. DNS converte i nomi delle macchine negli indirizzi IP che queste macchine hanno nella rete. In pratica fa corrispondere ("mappa", come dice lo jargon) i nomi agli indirizzi e viceversa e in più fa qualche altra cosa. Questo HOWTO spiega come definire questa corrispondenza, o mappatura, usando un sistema Unix, con alcune cose specifiche per Linux.

Una corrispondenza è semplicemente un'associazione tra due cose, in questo caso si tratta del nome di una macchina, come ftp.linux.org, e del numero IP (o indirizzo) della stessa macchina 199.249.150.4. Il DNS è in grado anche di mappare nell'altro senso, dal numero IP al nome della macchina; questo è detto mappatura inversa ("reverse mapping").

DNS è, per i non iniziati (voi ;-), una delle aree più opache dell'amministrazione di rete. Fortunatamente non è così dura. Questo HOWTO cercherà di rendere più chiare alcune cose. Esso descrive come impostare un semplice name server DNS. Partendo da un server cache ("caching only") per poi passare all'impostazione di un server DNS primario per un dominio. Per configurazioni più complesse date uno sguardo alla sezione Domande e Risposte di questo documento. Se non fosse descritto qui avrete bisogno di leggere la Vera Documentazione. Tornerò più tardi su in che cosa consista questa Vera Documentazione nell' ultimo capitolo

Prima di cominciare dovrete configurare la vostra macchina in modo da potervi connettere con telnet alla macchina e da essa verso l'esterno e che possa connettersi con successo alla rete. In particolar modo dovreste poter fare telnet 127.0.0.1 e ottenere la vostra stessa macchina (provate subito!). Avrete anche bisogno di un buon /etc/nsswitch.conf (oppure /etc/host.conf) e dei file /etc/resolv.conf e /etc/hosts come punto di partenza, finché non spiegherò la loro funzione. Se non avete già tutto questo impostato e funzionante il Networking-HOWTO o il Networking-Overview-HOWTO spiegano come farlo. Leggeteli.

Quando dico "la vostra macchina" intendo la macchina sulla quale state cercando di impostare il DNS. Nessun'altra macchina che potreste avere è coinvolta nel vostro lavoro.

Assumerò che non siate dietro un qualche tipo di firewall che blocca le interrogazioni dei nomi. Se invece lo siete, avrete bisogno di una speciale configurazione. Guardate la sezione Domande e Risposte.

Il servizio di risoluzione dei nomi su Unix è svolto da un programma chiamato named. Questo fa parte del pacchetto "BIND" che è coordinato da Paul Vixie del Internet Software Consortium. Named è incluso in molte distribuzioni Linux e di solito è installato come /usr/sbin/named da un pacchetto chiamato BIND, maiuscolo o minuscolo a seconda di chi ha creato il pacchetto.

Se avete named probabilmente potrete usarlo, se non l'avete potrete prendere i binari da un qualunque sito ftp su Linux, altrimenti prenderete i più recenti e grandiosi sorgenti da ftp://ftp.isc.org/isc/bind9/. Questo HOWTO si riferisce alla versione 9 di BIND. Le vecchie versioni dell'HOWTO, che fanno riferimento a bind 4 e 8, sono ancora disponibili presso http://langfeldt.net/DNS-HOWTO/. Se la pagina di man di named fa riferimento (per precisione alla fine, nella sezione FILES) a named.conf avete bind 8, se fa riferimento a named.boot avete bind 4. Se avete il 4 e siete coscienti del problema sicurezza dovreste aggiornare alla versione 8. Adesso.

DNS è un database distribuito sulla rete. Fate attenzione a cosa ci metterete dentro. Se ci metterete spazzatura, voi e gli altri ne ricaverete solo quella. Mantenete il vostro DNS snello e coerente, così otterrete un buon servizio da esso. Imparate ad usarlo, ad amministrarlo, a risolverne eventuali problemi e diventerete un altro buon amministratore che impedisce alla rete di cadere sulle ginocchia a causa della cattiva manutenzione.

Suggerimento: Fate una copia di backup di tutti i file che vi chiederò di modificare e che già avete, affinché possiate tornare presto operativi in caso non funzioni.

2.1 Altre implementazioni di Name Server.

Questa sezione è stata scritta da Joost van Baal.

Esistono diversi software per fare della vostra macchina un DNS server. C'è BIND ( http://www.isc.org/products/BIND/), che è l'implementazione trattata da questo HOWTO. È il più popolare name server in circolazione ed è usato nella stragrande maggioranza delle macchine name server che ci sono su Internet. È stato sviluppato a partire dagli anni '80. È disponibile sotto licenza BSD. A causa del fatto che è il più popolare esiste un sacco di documentazione su esso. Comunque, ci sono stati problemi relativi alla sicurezza di BIND.

Poi c'è djbdns ( http://djbdns.org/), un pacchetto DNS relativamente nuovo, scritto da Daniel J. Bernstein, l'autore di qmail. È una suite modulare: tanti piccoli programmi che si occupano di tutte quelle funzioni che un name server deve saper svolgere. È stato progettato tenendo bene in mente la sicurezza. Utilizza un formato di file di zona particolarmente semplice ed è generalmente facile da configurare. Però, a causa del fatto che è poco conosciuto, il vostro esperto locale potrebbe non essere in grado di aiutarvi con esso. Sfortunatamente, questo software non è Open Source. L'annuncio dell'autore è su http://cr.yp.to/djbdns/ad.html.

Se tale software sia davvero un miglioramento rispetto alle alternative più datate è soggetto di molte discussioni. Un dibattito (o piuttosto una flame-war?) su BIND contro djbdns, cui hanno partecipato quelli di ISC, si trova presso http://www.isc.org/ml-archives/bind-users/2000/08/msg01075.html.


Avanti Indietro Indice