Capitolo 12. BIND (Berkeley Internet Name Domain)

Sulla maggior parte dei sistemi moderni, incluso Internet, gli utenti identificano gli altri computer dal nome. Ció libera l'utente a ricordare l'indirizzo numerico delle risorse della rete. Il modo migliore per fare ció é l'impostazione di un Domain Name Service (DNS) o serve dei nomi, che converte gli hostname sulla rete in indirizzi numerici e viceversa.

In questo capitolo verrà trattato il server dei nomi incluso in Red Hat Linux, Berkeley Internet Name Domain (BIND) server DNS, con risalto alla struttura dei suoi file di configurazione e il modo in cui può essere amministrato in modo locale o remoto.

Per istruzioni sulla configurazione di BIND tramite Strumento di configurazione Bind, redhat-config-bind, consultate il capitolo sulla configurazione di BIND nella Red Hat Linux Customization Guide.

AttenzioneAvvertenza
 

Se usate Strumento di configurazione Bind, ricordatevi di non modificare manualmente i file di configurazione di BIND, poiché qualsiasi modifica manuale verrá sovrascritta la prossima volta che userete Strumento di configurazione Bind.

12.1. Introduzione a DNS

Quando gli host su di una rete, si collegano ad un'altra tramite un hostname, chiamato anche fully qualified domain name (FQDN), viene usato un DNS per associare i nomi delle macchine all'indirizzo IP per l'host.

L'uso dei nomi FQDN e DNS, è vantaggioso per gli amministratori di sistema, perché consente una certa flessibilità nella modifica degli indirizzi IP per un host, senza influire sulle query basate sui nomi dei computer stessi. Gli amministratori inoltre possono stabilire quale computer gestisce una query basata sui nomi.

Il DNS, viene normalmente implementato utilizzando server centrali che risultano "autorevoli" per alcuni domini e si rivolgono ad altri server DNS per ottenere le informazioni di cui non dispongono.

Quando un'applicazione client richiede informazioni al server dei nomi, di solito connettendosi ad esso tramite la porta 53 del server. Il server dei nomi cerca di risolvere l'FQDN in base alla sua libreria di conversione, che può contenere informazioni "autorevoli" per l'FQDN in questione oppure dati memorizzati in seguito a una precedente query. Se la libreria di conversione del server dei nomi non contiene già la risposta, esso si rivolgerà ad altri server di nomi, chiamati server dei nomi root per determinare quali sono i server di nomi autorevoli per l'FQDN in questione. Poi, con queste informazioni, chiede ai server dei nomi autorevoli il nome per determinare l'indirizzo IP. Se invece si esegue una ricerca inversa, viene utilizzata la stessa procedura, ma la richiesta è inoltrata con un indirizzo IP sconosciuto anziché un nome.

12.1.1. Zone del server dei nomi

In Internet, l'FQDN di un host può essere suddiviso in sezioni diverse, organizzate in una gerarchia ad albero con un tronco, dei rami principali, dei rami secondari e così via. Considerate il seguente FQDN:

bob.sales.example.com

Per capire come l'FQDN venga convertito nell'indirizzo IP che si riferisce a un determinato sistema, è necessario leggere il nome da destra a sinistra, con ogni livello della gerarchia separato da punti (.). In questo esempio, com indica il dominio ad alto livello per questo FQDN. example indica un sottodominio di com e, a sua volta, sales è un sottodominio di example. L'ultimo nome a sinistra in un FQDN è il nome dell'host che identifica una determinato calcolatore.

A eccezione del nome host, ogni sezione è definita zona e contraddistingue un particolare spazio dei nomi. Uno spazio dei nomi controlla la denominazione dei sottodomini alla propria sinistra. Mentre in questo esempio sono contenuti solo due sottodomini, un FQDN deve contenerne almeno uno, ma può comprenderne molti di più, a seconda di come sono organizzati gli spazi dei nomi.

Le zone sono definite nei server dei nomi autorevoli mediante l'uso di file zone, che descrivono lo spazio dei nomi di quella zona e i server di posta da usare per un dominio o sottodominio particolare. I file zone sono memorizzati in server dei nomi primari (chiamati anche server master) che sono autorevoli e consentono la modifica dei file e nei server dei nomi secondari (chiamati anche server slave), che ricevono i propri file zone dai server dei nomi primari. Ogni server dei nomi può essere allo stesso tempo primario o secondario per zone diverse e può essere riconosciuto autorevole per più zone. Dipende tutto dalla configurazione del server dei nomi.

12.1.2. Tipi di server dei nomi

Esistono quattro tipi principali di configurazione per i server dei nomi:

  • master — memorizza i record di zona originali e autorevoli per un determinato spazio dei nomi, rispondendo a richieste di altri server e cercando risposte relative a quello spazio dei nomi.

  • slave — risponde a richieste di altri server dei nomi relative agli spazi dei nomi sui quali ha autorità. Comunque i server slave ottengono le informazioni sugli spazi dei nomi dai server master.

  • caching-only — offre il nome ai servizi di risoluzione IP ma non è autorevole per tutte le zone. Di norma, le risposte a tutte le risoluzioni vengono memorizzate in un database archiviato in memoria per un determinato periodo di tempo, solitamente specificato dal record di zona recuperato.

  • forwarding — inoltra richieste a un elenco specifico di server dei nomi da convertire. Se nessuno dei server specificati può eseguire la risoluzione, il processo si interrompe e la risoluzione non viene completata.

Un server dei nomi può essere di uno o più tipi tra quelli descritti. Per esempio può essere un master per alcune zone e uno slave per altre e può offrire solo una risoluzione forwarding.

12.1.3. BIND come server dei nomi

BIND effettua dei servizi di risoluzione dei nomi attraverso il demone /usr/sbin/named. Include anche una utility di amministrazione chiamata /usr/sbin/rndc. Maggiori informazioni inerenti rndc possono essere trovate su la Sezione 12.4.

BIND immagazzina i propri file di configurazione in:

  • /etc/named.conf — Il file di configurazione per il demone named.

  • /var/named/ directory — La named directory dove si trovano i file zone, statistici, ecc.

Le sezioni successive descrivono in dettaglio i file di configurazione BIND.