Jak konfigurovat dnsmasq na Ubuntu Server 18.04 LTS

How Configure Dnsmasq Ubuntu Server 18



dnsmasq je velmi lehký místní server DNS. dnsmasq lze také nakonfigurovat jako server mezipaměti DNS a server DHCP. dnsmasq má podporu IPv4 a IPv6 včetně DHCPv4 a DHCPv6. dnsmasq je ideální pro malou síť.

V tomto článku vám ukážu, jak použít dnsmasq ke konfiguraci místního serveru DNS, ukládání serveru DNS do mezipaměti a serveru DHCP. Začněme tedy.







Topologie sítě:

Toto je topologie sítě tohoto článku. Zde nakonfiguruji router jako server DNS a DHCP s dnsmasq. router má 2 síťová rozhraní, jedno ( ens33 ) se připojí k Internet a ostatní ( ens38 ) připojí se k a síť swtich . Všichni ostatní hostitelé ( hostitel 1 , hostitel 2 , hostitel 3 ) v síti používá server DHCP nakonfigurovaný na router pro automatické přiřazování IP adres a serveru DNS pro překlad názvů.





Konfigurace statické IP:

V mé topologii sítě jste viděli, můj router má dvě rozhraní ens33 a ens38 . ens33 připojuje router k internetu a ens38 je připojen k a síťový přepínač , ke kterému se připojují ostatní počítače v síti. Budu muset použít DHCP k získání IP adresy pro ens33 rozhraní od mého ISP pro připojení k internetu. Ale ens38 rozhraní je nutné konfigurovat ručně.





Pojďme použít síť 192.168.10.0/24 pro rozhraní ens38 a další počítače v síti. Pokud používám síť 192.168.10.0/24, pak IP adresa souboru ens38 rozhraní routeru by mělo být 192.168.10.1/24. Toto je adresa IP serveru DNS a DHCP serveru dnsmasq.

POZNÁMKA: Název vašeho síťového rozhraní se může lišit. Můžete zjistit, k čemu vám to je ip a příkaz.



Na Ubuntu Server 18.04 LTS můžete použít netplan ke konfiguraci síťových rozhraní. Výchozí konfigurační soubor netplan je /etc/netplan/50-cloud-init.yaml .

Nejprve otevřete konfigurační soubor /etc/netplan/50-cloud-init.yaml s následujícím příkazem:

$sudo nano /atd/netplan/padesátka-cloud-init.yaml

Nyní zadejte následující řádky a uložte soubor stisknutím + X následován a a .

Nyní restartujte svůj router s následujícím příkazem:

$sudorestartovat

Jednou router boty, IP adresy by měly být přiřazeny podle očekávání.

Instalace dnsmasq:

dnsmasq je k dispozici v oficiálním úložišti balíčků Ubuntu. Můžete jej tedy snadno nainstalovat pomocí správce balíčků APT.

Ubuntu používá systemd-resolved ve výchozím nastavení pro správu serverů DNS a ukládání do mezipaměti DNS. Před instalací dnsmasq musíte zastavit a deaktivovat systemd-resolved služby. V opačném případě nebudete moci spustit dnsmasq vůbec.

Chcete -li zastavit systemd-resolved službu, spusťte následující příkaz:

$sudosystemctl stop systemd-vyřešen

Chcete -li zakázat systemd-resolved službu, spusťte následující příkaz:

$sudosystemctl zakázat systemd-vyřešeno

Standardně je /etc/resolv.conf soubor je propojen s jiným konfiguračním souborem systemd, jak můžete vidět na obrázku níže. Ale to už nechceme.

Odstraňte tedy /etc/resolv.conf propojení s následujícím příkazem:

$sudo rm -proti /atd/resolv.conf

Nyní vytvořte nový /etc/resolv.conf soubor a pomocí následujícího příkazu nastavte server Google DNS jako výchozí server DNS:

$vyhodil 'nameserver 8.8.8.8' | sudo tričko /atd/resolv.conf

Nyní aktualizujte mezipaměť úložiště balíčků APT následujícím příkazem:

$sudovýstižná aktualizace

Nyní nainstalujte dnsmasq pomocí následujícího příkazu:

$sudovýstižnýNainstalujtednsmasq

dnsmasq by měl být nainstalován.

Konfigurace serveru DNS serveru dnsmasq:

Konfigurační soubor dnsmasq je /etc/dnsmasq.conf . Chcete -li konfigurovat dnsmasq jako server DNS, musíte tento soubor upravit.

Výchozí /etc/dnsmasq.conf soubor obsahuje spoustu dokumentace a komentované možnosti. Proto si myslím, že je lepší přejmenovat /etc/dnsmasq.conf soubor do /etc/dnsmasq.conf.bk a vytvořte nový.

Konfigurační soubor můžete přejmenovat pomocí následujícího příkazu:

$sudo mv -proti /atd/dnsmasq.conf/atd/dnsmasq.conf.bk

Nyní vytvořte konfigurační soubor /etc/dnsmasq.conf jak následuje:

$sudo nano /atd/dnsmasq.conf

Nyní zadejte následující řádky a uložte soubor stisknutím + X následován a a .

# Konfigurace DNS
přístav=53

doména nutná
falešný-priv
přísný řád

expand-hosts
doména= example.com

POZNÁMKA: Změna example.com na název vaší vlastní domény.

Nyní restartujte službu dnsmasq pomocí následujícího příkazu:

$sudosystemctl restart dnsmasq

Ne, chyby. Skvělý!

Nyní musíte nastavit 192.168.10.1 jako výchozí adresu serveru DNS v /etc/resolv.conf .

Chcete -li to provést, otevřete /etc/resolv.conf soubor s následujícím příkazem:

$sudo nano /atd/resolv.conf

Nyní zadejte nameserver 192.168.10.1 před řadou nameserver 8.8.8.8 jak ukazuje obrázek níže. Poté soubor uložte.

A je to.

Přidání záznamů DNS:

Nyní můžete své položky DNS přidat do souboru /etc/hosts soubor.

Nejprve otevřete /etc/hosts soubor s následujícím příkazem:

$sudo nano /atd/hostitelé

Nyní zadejte své položky DNS v následujícím formátu:

IP_ADDR DOMAIN_NAME

Přidal jsem 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) jak je vyznačeno na obrázku níže. Můžete přidat libovolný počet záznamů DNS.

Až budete hotovi, uložte soubor stisknutím + X následován a a .

Nyní restartujte službu dnsmasq pomocí následujícího příkazu:

$sudosystemctl restart dnsmasq

Testování serveru DNS:

Jak vidíte, místní řešení DNS funguje.

$vyrouter.example.com

Funguje také rozlišení názvu internetu.

$vyGoogle com

Konfigurace serveru DHCP:

Chcete -li konfigurovat server DHCP, otevřete konfigurační soubor dnsmasq /etc/dnsmasq.conf opět následovně:

$sudo nano /atd/dnsmasq.conf

Nyní přidejte označené řádky na konec souboru. Poté soubor uložte.

# Konfigurace DHCP
dhcp-range = 192.168.10.50,192.168.10.240,255.255.255.0,24h
dhcp-option = volba: router, 192.168.10.1
dhcp-option = volba: 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

Tady, dhcp-range slouží k nastavení rozsahu IP adres, které server DHCP přiřadí hostitelům.

dhcp-option slouží k nastavení brány ( možnost: router ), Adresa serveru DNS ( volba: dns-server ) a maska ​​sítě ( možnost: maska ​​sítě )

dhcp-host slouží k nastavení konkrétních IP adres na hostitele v závislosti na zadaných MAC adresách.

Nyní restartujte službu dnsmasq pomocí následujícího příkazu:

$sudosystemctl restart dnsmasq

Testování serveru DHCP:

Jak vidíte, počítač hostitel 1 dostal IP adresu 192.168.10.51/24 ze serveru DHCP.

Rozlišení DNS funguje také od hostitel 1 .

Stejně, hostitel 2 a hostitel 3 také získá správnou adresu IP ze serveru DHCP a rozlišení DNS funguje na každém z nich.

Kam dál:

Pokud se chcete dozvědět více o dnsmasq, podívejte se na výchozí konfigurační soubor /etc/dnsmasq.conf (nyní přejmenováno na /etc/dnsmasq.conf.bk ). Má podrobný popis všech možností konfigurace dnsmasq.

$méně /atd/dnsmasq.conf.bk

Výchozí konfigurační soubor dnsmasq systému Ubuntu Server 18.04 LTS.

Takto tedy konfigurujete dnsmasq na Ubuntu Server 18.04 LTS. Děkujeme za přečtení tohoto článku.