Premier Training & Business Partner Red Hat

Bind: DNS Master e DNS Slave con Zone Replicate

Michele Milaneschi
Ti piacerebbe diventare anche tu uno di noi e
pubblicare i tuoi articoli nel blog degli RHCE italiani?

Dopo aver visto come si configura un server DNS che fa da Caching andremo a vedere come creare un DNS Master e un DNS Slave con Zone Replicate servendosi di 2 host.

Gli host che andremo a configurare sono i seguenti:

192.168.0.34 – – – – dns.michele.it – – -> DNS Master
192.168.0.100 – – – dns2.michele.it – – ->DNS Slave

Su tutti e i gli host andiamo ad installare Bind:

yum install -y bind bind-utils

bind01

A questo punto procediamo con la configurazione del DNS Master ( 192.168.0.34 ):

Innanzitutto dichiariamo su quale indirizzo IP deve rimanere in ascolto ( 192.168.0.34 ) e per quali host il Server può effettuare le interrogazioni e noi inseriamo tutti gli host della rete locale ( parametri cha abbiamo visto anche nel precedente articolo ) andando a editare il file /etc/named.conf

bind10

Andiamo a modificare il file /etc/resolv.conf inserendo il dominio di cui la macchina fa parte e l’indirizzo IP eliminando dei possibili DNS precedentemente configurati.

Il dominio lo ricaviamo trami il comando:

hostname -d

dominn

Andiamo cosi a modificare il file /etc/resolv.conf:

resolvvQuesta modifica andrà fatta anche nel file /etc/resolv.conf dell’host 192.168.0.100 ( DNS Slave ) che risulterà essere configurato nel sguente modo:

2resol

Adesso addentriamoci sulla parte un po’ più complessa, ossia la creazione di Zone:

Quale Zone dobbiamo creare sul nostro server DNS Master??

Innanzitutto la Zona relativa al nome della macchina ( pc1.talla.it ) con i relativi DNS (dns.michele.it e dns2.michele.it ).
Per ogni DNS dichiareremo i corrispondenti indirizzi IP delle 2 macchine

Un altra Zona andrà creata per il Reverse DNS della macchina ( pc1.talla.it ) tramite il dominio in-addr.arpa.
In essa verrà dichiarato anche un Record PTR ( pc1.talla.it e pc2.talla.it ) con i loro corrispondenti IP ( 34 e 100 ).

Prima di procedere ricordiamo che la creazione delle 2 zone sopra citate deve essere fatta su entrambi gli host quindi sia sul DNS Master che sul DNS Slave.

Infine dobbiamo creare anche la Zona specifica per i DNS in questione dove assoceremo ai 2 DNS gli indirizzi IP dei 2 host

Vediamo come fare:

Andiamo a dichiarare le zone in fondo al file /etc/named.conf:
Creiamo la zona relativa al nome della macchina:

bind23Adesso andiamo a creare il file che abbiamo chamato “pc1.talla.it.zone” nel percorso di default chè è /var/named:

cd /var/named
touch pc1.talla.it.zone

E qui dobbiamo inserire i parametri che abbiamo citato precedentemente, ma prima di essi dobbiamo dichiarare il record SOA che comprende alcuni parametri che vedremo di seguito:

Un record SOA ha una struttra simile alla seguente:

@ IN SOA ns1.example.com. hostmaster.example.com(

2013042201 ;Serial3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Default TTL

  • @ E’ sinonimo del dominio specificato nella direttiva zone del file /etc/named.conf che nel nostro caso è talla.it
  • IN Sta per Internet e definisce il tipo di rete.
  • Segue successivamente il name server e l’indirizzo mail del responsabile per la zona dove al posto della @ abbiamo un punto ( . ) perchè nei file di zona la @ ha un suo significato.
    Vedremo successivamente che al posto dell’indirizzo mail possiamo mettere anche un secondo name server.
  • Serial E’ un numero che può essere scelto a piacere e viene incrementato ogni volta che si modifica il file di zona ( possiamo inserire la data nella forma anno/mese/giorno ).
  • Refresh Indica ogni quanto gli slave devono collegarsi al master per verificare se questo ha parametri di zona aggiornati (grazie al serial maggiore)
  • Retry Indica dopo quanto tempo si deve effettuare un collegamento al master se il precendete è andato fallito
  • Expire Indica il tempo per il quale lo slave deve effettuare uno zone transfer e se non riesce lo slave server smette di fornire informazioni per la zona.
  • Default TTL Indica per quanto tempo si possono tenere in cache le informazioni

Detto ciò torniamo a noi e andiamo ad inserire il Record SOA nel file pc1.talla.it.zone ( che comunque deve essere inserito all’inizio della creazione di qualunque zona ) a cui aggiungeremo il name server con il suo corrispondente indirizzo IP.

bind24

A questo punto creiamo la Zona di Reverse usufruendo del dominio in.addr.arpa caratterizzata anche dal record PTR per l’identificazione degli hostname :

Dichiariamo la zona in /etc/named.conf:

bind25

E la creiamo in /var/named:

bind26

Riavviamo il Servizio e dando il seguente comando vediamo che viene effettuato correttamente il Reverse DNS:

host 192.168.0.34

bind27Queste 2 Zone vanno create anche sull’host 192.168.0.100 che farà da DNS Slave, vi mostriamo gli screenshot delle zone gia create:

bind28bind29bind30Non resta che creare la Zona relativa ai 2 DNS ma con una struttura diversa.

Dobbiamo creare la zona nel DNS Master in modo tale che in caso ci fosse qualche problema il DNS Slave soddisferà comunque le richieste.

Nel file /etc/named.conf del DNS Slave dobbiamo far riferimento al file delle Zone configurato sul DNS Master.

Creiamo la configurazione sul DNS Master.

bind31

michdns

Procediamo con il DNS Slave:

bind32Riavviamo il servizio named su entrambe le macchine:

2rest

E come vediamo anche se stoppiamo il DNS Master il DNS Slave soddisfa la nostra richiesta:

bind86

Possiamo capire meglio questa cosa se nell’host del DNS Master installiamo Apache e creiamo un VirtualHost con il nome di miosito.it

Creiamo la Zona relativa e la replichiamo sul DNS Slave:

bind33 bind344

Configuriamo il DNS Slave andando ad inserire la Zona miosito.it:

2sladn

Riavviamo il servizio named su entrambe le macchine e Come vediamo con i 2 DNS attivi tutto funziona:

bind87

Adesso proviamo a stoppare il DNS Master:

bind35

Come vediamo il dominio funziona e la richiesta viene soddisfatta anche se il DNS Master è down vista la “replica” sul DNS Slave.

Info about author

Michele Milaneschi

RHCE Consultant