IPv6 Certification Badge for kiokoman

Introduzione

Facciamo in modo che isc-dhcp-server aggiorni in automatico la zona locale e reverse di bind9

Prerequisiti

Si presume che bind e il server dhcp siano già installati, eventualmente potete trovare l'articolo relativo all'installazione qui.

Verrà utilizzato come esempio la comune rete 192.168.1.0/24 da modificare in base alle vostre esigenze come anche il nome per la

 

Configurazione

La procedura di modifica è molto semplice, si dovrà in sostanza mettere in comunicazione tra loro isc-dhcp-server e bind9, iniziamo con modificare il file di configurazione di isc-dhcp-server presente in /etc/dhcp

sudo nano /etc/dhcp/dhcpd.conf

 e aggiungiamo le seguenti righe di configurazione:

include "/etc/bind/rndc.key";
ddns-update-style interim;
allow client-updates;
ddns-updates on;
update-static-leases on;
zone kiokoman.local. {
  primary 192.168.1.1;
  key rndc-key;
}
zone 1.168.192.in-addr.arpa. {
        primary 192.168.1.1;
        key rndc-key;
}

 Sostanzialmente abbiamo importato la chiave di autorizzazione da bind, attivato gli aggiornamenti dinamici di isc-dhcp-server relativamente alla zona interna e alla reverse. Attenzione che 192.168.1.1 è solo di esempio e va sostituito con l'indirizzo ip del vostro server dove è installato bind.

Ricordo che il file rndc.key va creato con il comando rndc-confgen copiando e incollando al suo interno quanto generato se non fosse già presente.

Salvato la configurazione ci possiamo spostare nella cartella di bind, generalmente in /etc/bind e procedere alla modifica di quest'ultimo

dobbiamo creare i due file per la zona interna e la reverse:

sudo nano pri.kiokoman.local

all'interno copiate quanto segue aggiustando in base alle vostre esigenze:

$ORIGIN .
$TTL 907200     ; 1 week 3 days 12 hours
kiokoman.local      IN SOA  ns1.kiokoman.local. admin.kiokoman.local. (
                                2014072489 ; serial
                                28800      ; refresh (8 hours)
                                3600       ; retry (1 hour)
                                604800     ; expire (1 week)
                                38400      ; minimum (10 hours 40 minutes)
                                )
                        NS      ns1.kiokoman.local.
$ORIGIN kiokoman.local.
ns1                  A       192.168.1.1
local-dns-dhcp            CNAME   ns1

Per la reverse invece procediamo quanto segue:

sudo nano reverse-192.168.1

e aggiungiamo quanto segue, anche qui modificando nomi e ip in base alle esigenze:

$ORIGIN .
$TTL 907200     ; 1 week 3 days 12 hours
1.168.192.in-addr.arpa  IN SOA  ns1.kiokoman.local. admin.kiokoman.local. (
                                2014072106 ; serial
                                28800      ; refresh (8 hours)
                                604800     ; retry (1 week)
                                604800     ; expire (1 week)
                                86400      ; minimum (1 day)
                                )
                        NS      ns1.kiokoman.local.
$ORIGIN 1.168.192.in-addr.arpa.
1                      PTR     server.kiokoman.local.

 

Salviamo e assicuriamoci che i permessi siano corretti per i due file appena creati:

 

sudo chown bind:bind pri.kiokoman.local
sudo chown bind:bind reverse-192.168.1
sudo chmod 644 pri.kiokoman.local
sudo chmod 644 reverse-192.168.1

A questo punto dobbiamo modificare bind9 in modo che si metta in ascolto delle modifiche inviate dal server dhcp e che aggiorni le zone di conseguenza. Per poter fare questo modifichiamo il file /etc/bind/named.conf.local

sudo nano /etc/bind/named.conf.local

e aggiungiamo quanto segue:

controls {
      inet 127.0.0.1 port 953
              allow { 127.0.0.1; } keys { "rndc-key"; };
};
zone "kiokoman.local" {
        type master;
        file "/etc/bind/pri.kiokoman.local";
        allow-update { key rndc-key; };
};

zone "1.168.192.in-addr.arpa" IN {
        type master;
        file "/etc/bind/reverse-192.168.1";
        allow-update { key rndc-key; };
};

Abbiamo messo bind in ascolto sulla porta 953 autorizzando solo localhost previa verifica della chiave e specificato quali zone possono essere aggiornate.

assicuriamoci che in /etc/bind/named.conf.options sia inserito il il parametro include "/etc/bind/rndc.key";

Riavviamo i due servizi e esaminando i log dovremmo iniziare a vedere lo scambio di informazioni