Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
locale - IlSoftware.it
Michele Nasi
Creare un server DNS in LAN e usare record personalizzati per risolvere indirizzi
raggiungibili in locale. Come installare e configurare Dnsmasq su Ubuntu Server.
Per allestire il server DNS in LAN usiamo una macchina Ubuntu Server 20.04 e
installiamo Dnsmasq, un noto software che integra funzionalità di caching DNS,
server DHCP e molto altro.
Nel caso in cui network: {config: disabled} non fosse presente si deve modificare il
file di configurazione e aggiungere tale stringa.
Per salvare il file e uscire dall'editor di testo base premere CTRL+O quindi
CTRL+X.
Con il comando ip addr show si leggerà l'indirizzo IP privato correntemente
assegnato al sistema Ubuntu Server.
network:
ethernets:
enp0s3:
addresses: [192.168.1.151/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.4.4, 8.8.8.8]
version: 2
L'indirizzo del gateway (che di solito coincide con quello del router) va sostituito di
conseguenza.
Gli indirizzi 8.8.4.4 e 8.8.8.8 vanno sostituiti con un DNS pubblico raggiungibile
attraverso la rete Internet: nell'esempio abbiamo usato i server DNS Google.
Per applicare la configurazione e assegnare l'IP statico definito in precedenza si
deve digitare il comando seguente:
sudo netplan apply
Con il comando ip addr show ci si può accertare che la nuova configurazione sia
stata applicata. L'indicazione dynamic risulterà scomparsa.
Dal momento che il servizio di sistema systemd-resolve è in ascolto sulla porta 53,
prima di usare Dnsmasq è necessario disabilitarlo:
I simboli del cancelletto posti all'inizio delle seguenti due righe devono essere
rimossi:
#domain-needed
#bogus-priv
In questo modo le denominazioni locali (ad esempio sitoweb) che non hanno alcun
TLD specificato non saranno mai inoltrate al DNS gestito da terze parti (ad
esempio ai DNS Google).
Inoltre, con il secondo parametro di configurazione, gli indirizzi IP privati non
saranno esposti al gestore del server DNS remoto.
server=8.8.8.8
server=8.8.4.4
cache-size=1000
Senza modificare i file HOSTS sui singoli sistemi collegati in rete locale è possibile
risolvere correttamente le richieste di risoluzione dei nomi a dominio che non sono
conosciuti ai DNS pubblici.
Come ultimo passo basta digitare quanto segue per riavviare Dnsmasq e
verificarne lo stato:
Con il comando ipconfig /all si può verificare che il client Windows sta usando
come server DNS proprio quello locale.