DNS Server su Ubuntu

Da PiemonteWireless.

Installare un server DNS su Ubuntu (o Debian)

Delle volte conviene installare sul proprio gateway, oltre ad un server DHCP (consiglio udhcp) anche un server DNS. In questo modo potremo sia assegnare un nome di dominio alla nostra lan, sia semplificare la configurazione delle altre macchine, usando l'indirizzo del gateway anche come DNS. Chi non considera utili queste motivazioni, la semplice curiosità può bastare. Il server che usiamo è BIND9 La rete del mio esempio comprende un gateway 192.168.1.1 che chiamiamo gateway.ufficio.lan (su cui lavoriamo) e due macchine 192.168.1.10 e 192.168.1.11 che chiamiamo rispettivamente pollicino.ufficio.lan e paperino.ufficio.lan. Riassumendo:

  • 192.168.1.1 gateway.ufficio.lan
  • 192.168.1.10 pollicino.ufficio.lan
  • 192.168.1.11 paperino.ufficio.lan

Cominciamo installando BIND9

 apt-get install bind9

Ubuntu fornisce dei files di installazione preconfigurati con BIND9. A noi interessa:

 vim /etc/bind/named.conf.local

che contiene le zone. Una zona è un nome di dominio riferito ad un server DNS.

Aggiungiamo in coda al file le seguenti righe:

 zone "ufficio.lan" {
 type master;
 file "/etc/bind/zones/ufficio.lan.db";
 };
 
 zone "1.168.192.in-addr.arpa" {
 type master;
 file "/etc/bind/zones/rev.1.168.192.in-addr.arpa";
 };

Poi modifichiamo il file:

 vim /etc/bind/named.conf.options

e in particolare l'opzione forwarders che indica il server DNS a cui il nostro server deve forwardare le richieste che non riesce a soddisfare (nello specifico del caso tutte tranne il dominio ufficio.lan). Se il vostro provider non vi ha dato strani vincoli sui DNS da usare, vi consiglio OpenDNS agli indirizzi 208.67.222.222 e 208.67.220.220.

 forwarders {
     208.67.220.222;
     208.67.220.220;
  };

Adesso aggiunguamo i files delle zone.

 mkdir /etc/bind/zones
 vim /etc/bind/zones/ufficio.lan.db

che oontiene:

 ;
 ; SOA: Start of authority record
 ;
 $TTL 86400      ; 1  giorno
 @       IN      SOA     ns1.ufficio.lan. gateway.ufficio.lan. (
                       2003080800      ; se = Serial Number
                       172800          ; ref = Refresh = 2 giorni
                       86400           ; ret = Update Retry = 1 giorno
                       1209600         ; ex = Expiry = 2 settimane
                       604800          ; Negative Cache TTL
                       )
 
 ; Name Server
 @       IN      NS      ns1
       IN      MX      10 mail.linux.lan.
 
 ; A Records
         IN      A       192.168.1.1
 ns1     IN      A       192.168.1.1
 gateway IN      A       192.168.1.1
 mail    IN      A       192.168.1.1
 www     IN      A       192.168.1.1
 
 pollicino IN    A       192.168.1.10
 paperino  IN    A       192.168.1.11

Adesso creiamo il file per il Reverse DNS:

 vim /etc/bind/zones/rev.1.168.192.in-addr.arpa

che oontiene:

 ;
 ; SOA: Start of authority record
 ;
 $TTL 86400      ; 1  giorno
 @       IN      SOA     ns1.ufficio.lan. root.ufficio.lan. (
                       2003080800      ; se = Serial Number
                       172800          ; ref = Refresh = 2 giorni
                       86400           ; ret = Update Retry = 1 giorno
                       1209600         ; ex = Expiry = 2 settimane
                       604800          ; Negative Cache TTL
                       )
 
         IN      NS      ns1.ufficio.lan.
 1       IN      PTR     gateway.ufficio.lan.
 10      IN      PTR     pollicino.ufficio.lan.
 11      IN      PTR     paperino.ufficio.lan.

Adesso riavviamo BIND9 ed è fatta.

 /etc/init.d/bind9 stop
 /etc/init.d/bind9 start

Per info ulteriori consultate oltre alla home di BIND9, Pro DNS and BIND


Name (required):

Website:

Comment:

Davide said ...
02:48, 10 nov 2008 (CET)
Ottimo articolo!!

Ho seguito il tutorial e sono riuscito a configurare tutto al primo colpo.

Grazie.

102 Rating: 2.5/5 (11 votes cast)

Strumenti personali