Ako nakonfigurovať dnsmasq na Ubuntu Server 18.04 LTS

How Configure Dnsmasq Ubuntu Server 18



dnsmasq je veľmi ľahký lokálny server DNS. dnsmasq môže byť tiež nakonfigurovaný ako server cache DNS a server DHCP. dnsmasq podporuje IPv4 a IPv6 vrátane DHCPv4 a DHCPv6. dnsmasq je ideálny pre malú sieť.

V tomto článku vám ukážem, ako použiť dnsmasq na konfiguráciu lokálneho servera DNS, ukladania servera DNS do pamäte cache a servera DHCP. Začnime teda.







Topológia siete:

Toto je topológia siete tohto článku. Tu nakonfigurujem router ako server DNS a DHCP s dnsmasq. router má 2 sieťové rozhrania, jedno ( ens33 ) sa pripája k Internet a druhý ( ens38 ) sa pripája k a sieť swtich . Všetci ostatní hostitelia ( hostiteľ 1 , hostiteľ 2 , hostiteľ 3 ) v sieti používa server DHCP nakonfigurovaný na serveri router na automatické priradenie adries IP a servera DNS na rozlíšenie názvov.





Konfigurácia statickej adresy IP:

V mojej topológii siete ste videli, moja router má dve rozhrania ens33 a ens38 . ens33 pripája router k internetu a ens38 je pripojený k a prepínač siete , ku ktorému sa pripájajú ostatné počítače v sieti. Budem musieť použiť DHCP na získanie IP adresy pre ens33 rozhranie od môjho ISP na internetové pripojenie. Ale ens38 rozhranie je potrebné nakonfigurovať ručne.





Používajme sieť 192.168.10.0/24 pre rozhranie ens38 a ďalšie počítače v sieti. Ak používam sieť 192.168.10.0/24, potom IP adresa súboru ens38 rozhranie smerovača by malo byť 192.168.10.1/24. Toto je adresa IP servera dnsmasq DNS a DHCP.

POZNÁMKA: Názov vášho sieťového rozhrania sa môže líšiť. Môžete zistiť, na čo vám to je ip a príkaz.



Na serveri Ubuntu Server 18.04 LTS môžete použiť netplan konfigurovať sieťové rozhrania. Predvolený konfiguračný súbor netplan je /etc/netplan/50-cloud-init.yaml .

Najprv otvorte konfiguračný súbor /etc/netplan/50-cloud-init.yaml s nasledujúcim príkazom:

$sudo nano /atď/netplan/päťdesiat-cloud-init.yaml

Teraz zadajte nasledujúce riadky a súbor uložte stlačením + X nasledovaný a a .

Teraz reštartujte zariadenie router s nasledujúcim príkazom:

$sudoreštartovať

Raz router boot, IP adresy by mali byť priradené podľa očakávania.

Inštalácia dnsmasq:

dnsmasq je k dispozícii v oficiálnom úložisku balíkov Ubuntu. Môžete ho teda ľahko nainštalovať pomocou správcu balíkov APT.

Ubuntu používa systemd-resolved v predvolenom nastavení na správu serverov DNS a ukladania do vyrovnávacej pamäte DNS. Pred inštaláciou dnsmasq musíte zastaviť a vypnúť systemd-resolved služieb. V opačnom prípade nebudete môcť dnsmasq vôbec spustiť.

Ak chcete zastaviť systemd-resolved službu, spustite nasledujúci príkaz:

$sudosystemctl stop systemd-vyriešený

Ak chcete zakázať systemd-resolved službu, spustite nasledujúci príkaz:

$sudosystemctl vypnúť systém vyriešený

Štandardne je /etc/resolv.conf súbor je prepojený s iným konfiguračným súborom systemd, ako vidíte na obrázku nižšie. Ale to už nechceme.

Odstráňte teda /etc/resolv.conf prepojenie s nasledujúcim príkazom:

$sudo rm -v /atď/resolv.conf

Teraz vytvorte nový /etc/resolv.conf súbor a nastavte server Google DNS ako predvolený server DNS pomocou nasledujúceho príkazu:

$zahodil 'nameserver 8.8.8.8' | sudo tričko /atď/resolv.conf

Teraz aktualizujte vyrovnávaciu pamäť úložiska balíkov APT nasledujúcim príkazom:

$sudovýstižná aktualizácia

Teraz nainštalujte dnsmasq pomocou nasledujúceho príkazu:

$sudovýstižnýInštaláciadnsmasq

dnsmasq by mal byť nainštalovaný.

Konfigurácia servera dnsmasq DNS:

Konfiguračný súbor dnsmasq je /etc/dnsmasq.conf . Ak chcete nakonfigurovať dnsmasq ako server DNS, musíte tento súbor upraviť.

Predvolené /etc/dnsmasq.conf súbor obsahuje množstvo dokumentácie a komentovaných možností. Preto si myslím, že je lepšie premenovať /etc/dnsmasq.conf súbor do /etc/dnsmasq.conf.bk a vytvorte nový.

Konfiguračný súbor môžete premenovať pomocou nasledujúceho príkazu:

$sudo mv -v /atď/dnsmasq.conf/atď/dnsmasq.conf.bk

Teraz vytvorte konfiguračný súbor /etc/dnsmasq.conf nasledovne:

$sudo nano /atď/dnsmasq.conf

Teraz zadajte nasledujúce riadky a súbor uložte stlačením + X nasledovaný a a .

# Konfigurácia DNS
prístav=53

doména potrebná
falošný-priv
prísny poriadok

expand-hosts
doména= example.com

POZNÁMKA: Zmeniť example.com na meno vašej vlastnej domény.

Teraz reštartujte službu dnsmasq pomocou nasledujúceho príkazu:

$sudosystemctl reštart dnsmasq

Nie, chyby. Skvelé!

Teraz musíte nastaviť 192.168.10.1 ako predvolenú adresu servera DNS v /etc/resolv.conf .

Ak to chcete urobiť, otvorte /etc/resolv.conf súbor s nasledujúcim príkazom:

$sudo nano /atď/resolv.conf

Teraz zadajte nameserver 192.168.10.1 pred radom nameserver 8.8.8.8 ako je znázornené na obrázku nižšie. Potom súbor uložte.

To je všetko.

Pridanie záznamov DNS:

Teraz môžete svoje položky DNS pridať do /etc/hosts súbor.

Najprv otvorte /etc/hosts súbor s nasledujúcim príkazom:

$sudo nano /atď/hostitelia

Teraz zadajte svoje položky DNS v nasledujúcom formáte:

IP_ADDR DOMAIN_NAME

Pridal som 4 záznamy router.example.com (192.168.10.1) , host1.example.com (192.168.10.51) , host2.example.com (192.168.10.52) a host3.example.com (192.168.10.53) ako je vyznačené na obrázku nižšie. Môžete pridať ľubovoľný počet záznamov DNS.

Po dokončení uložte súbor stlačením + X nasledovaný a a .

Teraz reštartujte službu dnsmasq pomocou nasledujúceho príkazu:

$sudosystemctl reštart dnsmasq

Testovanie servera DNS:

Ako vidíte, miestne rozlíšenie DNS funguje.

$tyrouter.example.com

Funguje aj rozlíšenie internetového názvu.

$tyGoogle com

Konfigurácia servera DHCP:

Ak chcete nakonfigurovať server DHCP, otvorte konfiguračný súbor dnsmasq /etc/dnsmasq.conf opäť takto:

$sudo nano /atď/dnsmasq.conf

Teraz pridajte označené riadky na koniec súboru. Potom súbor uložte.

# Konfigurácia DHCP
dhcp-range = 192.168.10.50,192.168.10.240,255.255.255.0,24h
dhcp-option = možnosť: router, 192.168.10.1
dhcp-option = možnosť: dns-server, 192.168.10.1
dhcp-option = možnosť: maska ​​siete, 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

Tu, rozsah dhcp sa používa na nastavenie rozsahu adries IP, ktoré server DHCP priradí hostiteľom.

dhcp-option slúži na nastavenie brány ( možnosť: router ), Adresa servera DNS ( možnosť: dns-server ) a maska ​​siete ( možnosť: maska ​​siete )

dhcp-hostiteľ sa používa na nastavenie konkrétnych adries IP hostiteľom v závislosti od zadaných adries MAC.

Teraz reštartujte službu dnsmasq pomocou nasledujúceho príkazu:

$sudosystemctl reštart dnsmasq

Testovanie servera DHCP:

Ako vidíte, počítač hostiteľ 1 dostal IP adresu 192.168.10.51/24 zo servera DHCP.

Rozlíšenie DNS funguje aj od hostiteľ 1 .

Rovnakým spôsobom, hostiteľ 2 a hostiteľ 3 tiež získa správnu adresu IP zo servera DHCP a rozlíšenie DNS funguje na každom z nich.

Kam ďalej:

Ak sa chcete dozvedieť viac o dnsmasq, pozrite sa do predvoleného konfiguračného súboru /etc/dnsmasq.conf (teraz premenované na /etc/dnsmasq.conf.bk ). Má podrobný popis všetkých možností konfigurácie dnsmasq.

$menej /atď/dnsmasq.conf.bk

Predvolený konfiguračný súbor dnsmasq systému Ubuntu Server 18.04 LTS.

Takto teda nakonfigurujete dnsmasq na Ubuntu Server 18.04 LTS. Ďakujem za prečítanie tohto článku.