Dnsmasq/it

Dnsmasq è un semplice server DHCP/DNS che può essere utilizzato per reti locali fino a 1000 client. Le sue features chiave sono facilità di configurazione ed un basso impiego di risorse. Supporta anche IPv6.

Installazione
L'installazione di dnsmasq è pienamente supportata dal gestore di pacchetti e dall'albero dei portage. Come prima cosa, selezionare le flag USE appropriate.

Poi, installare ed aggiungerlo al runlevel default nel caso sia necessario avviarlo automaticamente.

Configurazione
Ci sono molteplici risorse che possono essere modificare il comportamento di dnsmasq. Queste includono
 * le opzioni a riga di comando passate attraverso
 * il file di configurazione principale

Configurazione del servizio
In possono essere configurate le opzioni a riga di comando passate al demone dnsmasq in fase di avvio.

File di configurazione principale
La configurazione di dnsmasq viene effettuata principalmente attraverso il suo file di configurazione,. Il file ha una sintassi, quello fornito dal pacchetto è ben documentato ed è raccomandata la sua lettura. E'possibile referenziare risorse aggiuntive (come un hosts file DHCP) nel file o attraverso le opzioni a riga di comando.

Di seguito un esempio di configurazione:

Dopo ogni modifica al fiole di configurazione, il servizio deve essere riavviato. Il reloading è supportato, ma per altre risorse.

Hosts file
Dnsmasq utilizza il file come una delle sorgenti per fornire il servizio DNS, a meno che non sia avviato con l'opzione

Se il file viene modificato, il servizio dnsmasq deve ricevere un SIGHUP per ricaricare le impostazioni. Questo è fattibile anche utilizzando lo script di init con il comando reload:

Questo comportamento può essere disabilitato anche introducendo il parametro  nel file di configurazione.

File hosts aggiuntivo
E'possibile far riferimento ad un file hosts (aggiuntivo) come sorgente per le query DNS. Per fare ciò, aggiungere l'opzione   ai parametri a riga di comando. Indicando una directory, tutti i file al suo interno saranno trattati come file hosts aggiuntivi.

Come per il file hosts standard, un segnale SIGHUP ricarica il file.

Questo comportamento può essere impostato con il parametro  nel file di configurazione

Server DNS upstream
Per default, dnsmasq utilizza i server indicati in come server DNS upstream.

Un file differente può essere indicato con l'opzione

Questo comportamento può essere impostato con il parametro  nel file di configurazione

Features
Dnsmasq supporta i servizi DNS, TFTP, PXE, router advertisements e DHCP services. Per questo, è uno strumento di gestione versatile per reti di piccole e medie dimensioni.

Servizi DNS
In modo da fornire (solamente) servizi DNS, prima identificate il "nameserver upstream" da utilizzare. Se questo è lo stesso server configurato in non è necessario definire altro. Altrimenti, puntare dnsmasq al file  appropriato, utilizzando l'opzione. La sintassi di quest'ultimo è la stessa a quella di, anche se dnsmasq considera soltanto le definizioni dei "nameserver".

Per esempio:

Poi puntare dnsmasq a questo file attraverso il file di configurazione:

Per verificare che il servizio sia attivo (dopo un restart, dato che il file di configurazione è stato modificato), usate il comando   (fornito con ), richiedendo al server DNS di risolvere un indirizzo locale o remoto:

DNSSEC
Dnsmasq can validate DNSSEC data while passing through data. This can be accomplished by adding these lines to the config file:

The trusted anchor can be found on the iana.org site. After this change dnsmasq will return SERVFAIL and no DNS data if the validation fails. If the validation succeeds it sets the ad flag. In case the domain does not support DNSSEC dnsmasq behaves as before.

Servizio DHCP
Per abilitare il servizio DHCP di dnsmasq, è necessario utilizare la configurazione.

Per esempio, per abilitare la configurazione di indirizzi IPv6 attraverso RA ed IPv4, entrambi con tempo di lease infinito:

E'possibile utilizzare definizioni statiche per host conosciuti, sia nel il file di configurazione principale che attraverso un file separato. Se viene utilizzato un file separato, aggiungete l'opzione  alla riga di comando di dnsmasq. Il vantaggio di quest'ultimo approccio è che basta mandare un segnale SIGHUP al processo per rileggere le entries, mentre ogni modifica del file di configurazione richiede un completo restart del servizio.

Per maggiori informazioni riguardo la sintassi del parametro  fate riferimento alla pagina man o al file di configurazione dato che la sua sintassi è molto ampia.

Utilizzo
Questa sezione illustra diversi scenari (task operativi e di manutenzione) riguardanti il servizio dnsmasq.

Reset delle allocazioni (leases)
I client che effettuano un update dell'interfaccia, ottenendo una modifica del loro indirizzo MAC, potrebbero non ottenere l'indirizzo IP voluto in modo immediato. Questo perchè dnsmasq ha fornito al vecchio MAC address lo stesso indirizzo IP, quindi aspetterà fino alla scadenza della lease prima di riassegnarlo

Il servizio dnsmasq memorizza le sue leases in. Nel caso sia necessaria una rimozione rapida, è sufficiente spegnere il servizio dnsmasq, rimuovere le lease dal file e riavviare nuovamente il servizio

Reload delle configurazioni secondarie
Oltre al file, il servizio dnsmasq può utilizzare definizioni esterne per seguenti servizi:
 * Entry di configurazione host DHCP (utilizzando l'opzione )
 * Opzioni DHCP (utilizzando l'opzione )

Quando questi file sono modificati, è possibile ricaricarli mandando un segnale SIGHUP al processo dnsmasq