Cum se configurează dnsmasq pe Ubuntu Server 18.04 LTS

How Configure Dnsmasq Ubuntu Server 18



dnsmasq este un server DNS local foarte ușor. dnsmasq poate fi configurat și ca server cache DNS și server DHCP. dnsmasq are suporturi IPv4 și IPv6, inclusiv DHCPv4 și DHCPv6. dnsmasq este ideal pentru rețelele mici.

În acest articol, vă voi arăta cum să utilizați dnsmasq pentru a configura un server DNS local, cache server DNS și server DHCP. Deci sa începem.







Topologie de rețea:

Aceasta este topologia rețelei acestui articol. Aici, voi configura router ca server DNS și DHCP cu dnsmasq. router are 2 interfețe de rețea, una ( ens33 ) se conectează la Internet si celalalt ( ens38 ) se conectează la a rețea swtich . Toate celelalte gazde ( gazdă1 , gazdă2 , gazdă3 ) în rețea utilizează serverul DHCP configurat pe router pentru alocarea automată a adreselor IP și a serverului DNS pentru rezoluția numelui.





Configurarea IP static:

În topologia mea de rețea, ai văzut, a mea router are două interfețe ens33 și ens38 . ens33 conectează routerul la internet și ens38 este conectat la un comutator de rețea , la care se conectează alte computere din rețea. Va trebui să folosesc DHCP pentru a obține o adresă IP pentru ens33 interfață de la ISP-ul meu pentru conexiune la internet. Cu exceptia ens38 interfața trebuie configurată manual.





Să folosim rețeaua 192.168.10.0/24 pentru interfața ens38 și alte computere din rețea. Dacă folosesc rețeaua 192.168.10.0/24, atunci adresa IP a ens38 interfața routerului ar trebui să fie 192.168.10.1/24. Aceasta este adresa IP a serverului DNS dnsmasq și a serverului DHCP.

NOTĂ: Numele interfeței dvs. de rețea poate fi diferit. Puteți afla ce este pentru dvs. cu ajutorul ip a comanda.



Pe Ubuntu Server 18.04 LTS, puteți utiliza netplan pentru a configura interfețele de rețea. Fișierul de configurare implicit al netplanului este /etc/netplan/50-cloud-init.yaml .

Mai întâi, deschideți fișierul de configurare /etc/netplan/50-cloud-init.yaml cu următoarea comandă:

$sudo nano /etc./netplan/cincizeci-cloud-init.yaml

Acum, tastați următoarele rânduri și salvați fișierul apăsând + X urmată de și și .

Acum, reporniți router cu următoarea comandă:

$sudoreporniți

Odata ce router boot-urile, adresele IP ar trebui atribuite conform așteptărilor.

Instalarea dnsmasq:

dnsmasq este disponibil în depozitul oficial de pachete Ubuntu. Deci, îl puteți instala cu ușurință utilizând managerul de pachete APT.

Ubuntu folosește sistem-rezolvat implicit pentru a gestiona serverele DNS și cache-ul DNS. Înainte de a instala dnsmasq, trebuie să opriți și să dezactivați sistem-rezolvat Servicii. În caz contrar, nu veți putea rula deloc dnsmasq.

Pentru a opri sistem-rezolvat service, executați următoarea comandă:

$sudosystemctl stop systemd-rezolvat

Pentru a dezactiva sistem-rezolvat service, executați următoarea comandă:

$sudosystemctl dezactivează systemd-resolver

În mod implicit, fișierul /etc/resolv.conf fișierul este legat de un alt fișier de configurare systemd așa cum puteți vedea în captura de ecran de mai jos. Dar nu mai vrem.

Deci, eliminați /etc/resolv.conf link cu următoarea comandă:

$sudo rm -v /etc./resolv.conf

Acum, creați un nou /etc/resolv.conf fișier și setați serverul DNS Google ca server DNS implicit cu următoarea comandă:

$aruncat „server de nume 8.8.8.8” | sudo tee /etc./resolv.conf

Acum, actualizați memoria cache a depozitului de pachete APT cu următoarea comandă:

$sudoactualizare aptă

Acum, instalați dnsmasq cu următoarea comandă:

$sudoaptinstalarednsmasq

Ar trebui instalat dnsmasq.

Configurarea serverului DNS dnsmasq:

Fișierul de configurare al dnsmasq este /etc/dnsmasq.conf . Pentru a configura dnsmasq ca server DNS, trebuie să modificați acest fișier.

Implicit /etc/dnsmasq.conf fișierul conține o mulțime de documentație și opțiuni comentate. Deci, cred că este mai bine să redenumiți /etc/dnsmasq.conf trimiteți la /etc/dnsmasq.conf.bk și creați unul nou.

Puteți redenumi fișierul de configurare cu următoarea comandă:

$sudo mv -v /etc./dnsmasq.conf/etc./dnsmasq.conf.bk

Acum, creați fișierul de configurare /etc/dnsmasq.conf după cum urmează:

$sudo nano /etc./dnsmasq.conf

Acum, tastați următoarele rânduri și salvați fișierul apăsând + X urmată de și și .

# Configurare DNS
port=53

domeniu necesar
fals-priv
ordine strictă

extinde-gazde
domeniu= exemplu.com

NOTĂ: Schimbare example.com către propriul nume de domeniu.

Acum, reporniți serviciul dnsmasq cu următoarea comandă:

$sudosystemctl reporniți dnsmasq

Nu, erori. Grozav!

Acum, trebuie să stabiliți 192.168.10.1 ca adresă implicită a serverului DNS din /etc/resolv.conf .

Pentru a face acest lucru, deschideți /etc/resolv.conf fișier cu următoarea comandă:

$sudo nano /etc./resolv.conf

Acum, introduceți server de nume 192.168.10.1 înainte de linie server de nume 8.8.8.8 așa cum se arată în captura de ecran de mai jos. Apoi salvați fișierul.

Asta e.

Adăugarea de înregistrări DNS:

Acum, puteți adăuga intrările DNS la / etc / hosts fişier.

Mai întâi, deschideți fișierul / etc / hosts fișier cu următoarea comandă:

$sudo nano /etc./gazde

Acum, introduceți intrările DNS în următorul format:

IP_ADDR DOMAIN_NAME

Am adăugat 4 intrări router.example.com (192.168.10.1) , host1.example.com (192.168.10.51) , host2.example.com (192.168.10.52) , și host3.example.com (192.168.10.53) așa cum este marcat în captura de ecran de mai jos. Puteți adăuga câte intrări DNS doriți.

După ce ați terminat, salvați fișierul apăsând + X urmată de și și .

Acum, reporniți serviciul dnsmasq cu următoarea comandă:

$sudosystemctl reporniți dnsmasq

Testarea serverului DNS:

După cum puteți vedea, rezoluția DNS locală funcționează.

$turouter.example.com

Rezoluția numelui de internet funcționează, de asemenea.

$tuGoogle com

Configurarea serverului DHCP:

Pentru a configura serverul DHCP, deschideți fișierul de configurare dnsmasq /etc/dnsmasq.conf din nou după cum urmează:

$sudo nano /etc./dnsmasq.conf

Acum, adăugați liniile marcate la sfârșitul fișierului. Apoi salvați fișierul.

# Configurare DHCP
gama dhcp = 192.168.10.50,192.168.10.240,255.255.255.0,24h
dhcp-option = opțiune: router, 192.168.10.1
dhcp-option = option: dns-server, 192.168.10.1
dhcp-option = option: netmask, 255.255.255.0

dhcp-host = 00: 0C:29: A5: BD: 4A, 192.168.10.51
dhcp-host = 00: 0C:29: A5: BD: 5B, 192.168.10.52
dhcp-host = 00: 0C:29: A5: BD: 6C, 192.168.10.53

Aici, gama dhcp este utilizat pentru a seta gama de adrese IP pe care serverul DHCP le va atribui gazdelor.

opțiunea dhcp este folosit pentru a seta gateway-ul ( opțiune: router ), Adresa serverului DNS ( opțiune: dns-server ), și netmask ( opțiune: netmask )

dhcp-host este utilizat pentru a seta adrese IP specifice gazdelor în funcție de adresele MAC specificate.

Acum, reporniți serviciul dnsmasq cu următoarea comandă:

$sudosystemctl reporniți dnsmasq

Testarea serverului DHCP:

După cum puteți vedea, computerul gazdă1 a primit adresa IP 192.168.10.51/24 de pe serverul DHCP.

Rezoluția DNS funcționează și de la gazdă1 .

În același mod, gazdă2 și gazdă3 primește, de asemenea, adresa IP corectă de pe serverul DHCP și rezoluția DNS funcționează pe fiecare dintre ele.

Unde să mergi Următorul:

Dacă doriți să aflați mai multe despre dnsmasq, verificați fișierul de configurare implicit /etc/dnsmasq.conf (redenumit acum în /etc/dnsmasq.conf.bk ). Are o descriere detaliată a tuturor opțiunilor de configurare ale dnsmasq.

$Mai puțin /etc./dnsmasq.conf.bk

Fișier de configurare implicit dnsmasq al Ubuntu Server 18.04 LTS.

Deci, așa configurați dnsmasq pe Ubuntu Server 18.04 LTS. Vă mulțumim că ați citit acest articol.