Come configurare dnsmasq su CentOS 7

Come configurare dnsmasq su CentOS 7
DNSMASQ è un server DNS molto leggero e semplice. DNSMASQ può essere configurato per essere un server DNS e un server DHCP. In questo articolo, ti mostrerò come configurare il server DNS DNSMASQ su CentOS 7. Parlerò anche di alcune delle opzioni di configurazione del server DNS comuni di DNSMASQ. Quindi iniziamo.

Impostazione dell'indirizzo IP statico:

Innanzitutto, devi impostare un indirizzo IP statico sulla macchina CentOS 7. Puoi farlo tramite Interfaccia utente del testo di Network Manager nmtui.

Esegui NMTUI con il seguente comando:

$ sudo nmtui

Ora, seleziona Modifica una connessione e premere .

Ora, seleziona Automatico dal Configurazione IPv4 sezione e stampa .

Ora, seleziona Manuale e premere .

Ora, navigare a e premere .

Ora, devi aggiungere l'indirizzo IP, il gateway, l'indirizzo del server DNS e il dominio di ricerca.

L'indirizzo dovrebbe essere l'indirizzo IP della macchina CentOS 7. Questo sarà anche l'indirizzo IP del tuo server DNS una volta configurato DNSMASQ.

Il gateway è l'indirizzo IP del tuo router.

Usa l'indirizzo IP che stai impostando per la macchina CentOS 7 come server DNS primario. Quindi, preferisco aggiungere 8.8.8.8 (Server DNS pubblico di Google) come server DNS secondario.

Il dominio di ricerca dovrebbe essere il tuo nome di dominio.

Una volta terminato, assicurati che tutte le opzioni contrassegnate siano controllate. È possibile selezionare le opzioni e premere per controllarli se non vengono già controllati.

Quindi, navigare a e premere .

Finalmente, premere 2 volte e riavviare il computer con il seguente comando:

$ sudo riavvia

Una volta che il tuo computer si avvia, l'indirizzo IP deve essere impostato come puoi vedere nello screenshot seguente.

$ ip a

Installazione di DNSmasq:

DNSMASQ è disponibile nel repository di pacchetti ufficiali di CentOS 7. Quindi, puoi facilmente installarlo con il Gestione pacchetti Yum.

Innanzitutto, aggiorna la cache del repository pacchetto Yum con il seguente comando:

$ sudo yum makecache

Ora, esegui il seguente comando per installare DNSMASQ:

$ sudo yum installa dnsmasq

Ora, premere y e poi premere continuare.

Premere y e poi premereaccettare anche la chiave GPG del repository CentOS 7.

DNSMASQ dovrebbe essere installato.

Configurazione di dnsmasq:

Il file di configurazione DNSmasq predefinito è /etc/dnsmasq.conf. Questo file contiene tutte le opzioni supportate di dnsmasq e ben documentate. Ma è molto lungo e difficile da lavorare. Quindi, ho intenzione di rinominare questo file a /etc/dnsmasq.conf.Bk e creare un nuovo file di configurazione /etc/dnsmasq.conf. In questo modo, ogni volta che ho bisogno di aiuto, posso semplicemente guardare il file /etc/dnsmasq.con.Bk e digitare le opzioni richieste in /etc/dnsmasq.conf file.

Per rinominare il file di configurazione DNSMASQ, eseguire il seguente comando:

$ sudo mv /etc /dnsmasq.conf /etc /dnsmasq.conf.Bk

Ora, crea un nuovo file di configurazione con il seguente comando:

$ sudo vi /etc /dnsmasq.conf

Ora, premere io Per andare alla modalità inserisci di VI e digitare le seguenti righe. Quindi premere . Finalmente, digita : WQ! e premere Per salvare il file.

Qui, porta viene utilizzato per impostare la porta (53 In questo articolo) che dnsmasq ascolterà.

dominio è il tuo nome di dominio. Ho usato esempio.com in questo articolo.

Ora riavvia il servizio DNSMASQ con il seguente comando:

$ sudo systemctl riavvio dnsmasq

Ora, controlla se il server DNSMASQ è in esecuzione correttamente con il seguente comando:

$ sudo systemctl status dnsmasq

Funziona correttamente.

Aggiunta di nuove voci DNS a DNSMASQ:

Ora puoi aggiungere nuove voci DNS a DNSMASQ molto facilmente usando il /etc/host file.

Per farlo, aprire il /etc/host File con VI come segue:

$ sudo vi /etc /host

Ora, digita le seguenti righe alla fine del file e salva il file.

192.168.21.20 ns.esempio.com
192.168.21.51 Docker1.esempio.com
192.168.21.52 Docker2.esempio.com
192.168.21.53 Docker3.esempio.com
192.168.21.80 ESXI1.esempio.com
192.168.21.81 ESXI2.esempio.com
192.168.21.100 www.il mio sito web.com

Qui, hai una voce DNS in ogni riga. Ogni riga contiene un indirizzo IP e un nome host separato da schede o spazi. Si digita prima l'indirizzo IP e poi il nome host.

Ora, riavvia il servizio DNSMASQ per le modifiche ad avere effetto.

$ sudo systemctl riavvio dnsmasq

Test del server DNS:

Ora puoi usare Dig per testare se il server DNS funziona o meno.

NOTA: Il comando Dig non è disponibile su CentOS 7 per impostazione predefinita. Il comando Dig è incluso nel Bind-Utils pacchetto. Puoi installarlo come segue:

$ sudo yum installa bind-otils

Ora, esegui il seguente comando per verificare se il nome DNS (diciamo Docker1.esempio.com) può essere risolto:

$ dig Docker1.esempio.com

Come puoi vedere, viene stampato l'indirizzo IP del nome DNS. Quindi, funziona.

DNSMASQ può anche fungere da server di cache DNS. Per verificare se la memorizzazione nella cache DNS funziona, eseguire il seguente comando:

$ Dig Google.com

Come puoi vedere, gli indirizzi IP del nome DNS Google.com è stampato sullo schermo. Quindi, anche la cache DNS funziona.

Altre opzioni DNSmasq:

Ti ho mostrato una configurazione DNSMASQ molto semplice sopra. Ma ci sono alcune altre opzioni comuni che puoi utilizzare per configurare DNSmasq. In questa sezione, li daremo un'occhiata.

  • utente E gruppo - È possibile utilizzare queste opzioni per impostare un utente e gruppo esegue per DNSmasq.

Per esempio,

utente = dnsmasq
gruppo = dnsmasq
  • dimensione della cache - Se si desidera aumentare il numero di record DNS che verranno memorizzati nella cache dal server DNSMASQ, usa questa opzione.

Ad esempio, per impostare la cache su 1000, utilizzare

cache-size = 1000
  • addn-host - In precedenza, ho usato il valore predefinito /etc/host File per aggiungere nuove voci DNS. Ma, se si desidera utilizzare un file host diversi per nomi di dominio diversi, questa opzione è utile per te.

Ad esempio, puoi creare un nuovo file /etc/host.esempio.com e aggiungi tutto l'esempio.Voci DNS come lì. Quindi aggiungi la riga seguente al tuo /etc/dnsmasq.conf file:

addn-hosts =/etc/host.esempio.com
  • Resolv-file - Per impostazione predefinita DNSMASQ usa il /etc/resolv.conf File per conoscere quali server DNS utilizzare per la memorizzazione nella cache dei nomi. Ma se si desidera che DNSmasq ottenga queste informazioni da qualche altro file, crea il file, aggiungi i server DNS a quel file e infine aggiungi Resolv-file Opzione per il tuo file di configurazione DNSmasq /etc/dnsmasq.conf.

Ad esempio, per utilizzare il file /etc/resolv2.conf come dnsmasq Resolv-file,

Crea il file come segue:

$ sudo vi /etc /resolv2.conf

Ora aggiungi i tuoi server DNS lì nel seguente formato. Ricorda di mettere quelli di alta priorità sopra gli altri.

Nameserver 192.168.21.2
nameserver 8.8.8.8

Quindi, aggiungi la riga seguente al /etc/dnsmasq.conf file.

resolv-file =/etc/resolv2.conf

Ci sono molte altre opzioni di dnsmasq. Ti consiglio di controllare la configurazione predefinita di dnsmasq a cui hai rinominato /etc/dnsmasq.conf.Bk In precedenza per ulteriori informazioni.

Quindi, è così che configuri DNSMASQ DNS Server su CentOS 7. Grazie per aver letto questo articolo.