V tomto článku vám ukážu, jak použít dnsmasq ke konfiguraci místního serveru DNS, ukládání do mezipaměti server DNS a server DHCP. Pojďme tedy začít.
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) připojuje se k Internet a ostatní (ens38) připojuje se k a síťový přepínač. Všichni ostatní hostitelé (hostitel1, hostitel2, hostitel3) v síti používá server DHCP nakonfigurovaný na serveru router pro automatické přiřazení IP adres a DNS serveru pro překlad jmen.
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ým se připojují ostatní počítače v síti. Budu muset použít DHCP, abych získal IP adresu pro ens33 rozhraní od mého ISP pro připojení k internetu. Ale ens38 rozhraní musí být konfigurováno 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žiji síť 192.168.10.0/24, pak IP adresa ens38 rozhraní routeru by mělo být 192.168.10.1/24. Toto je IP adresa dnsmasq DNS serveru a DHCP serveru.
POZNÁMKA: Název vašeho síťového rozhraní se může lišit. S pomocí můžete zjistit, co to pro vás je ip a příkaz.
Na serveru Ubuntu Server 18.04 LTS, můžete použít netplan konfigurovat síťová 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 / etc / netplan / 50-cloud-init.yaml
Nyní zadejte následující řádky a uložte soubor stisknutím
Nyní restartujte svůj router s následujícím příkazem:
$ sudo restart
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-vyřešen 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-vyřešen služby. Jinak nebudete moci dnsmasq vůbec spustit.
Chcete-li zastavit systemd-vyřešen služba, spusťte následující příkaz:
$ sudo systemctl stop systemd-vyřešen
Chcete-li deaktivovat systemd-vyřešen služba, spusťte následující příkaz:
$ sudo systemctl deaktivovat systemd-resolved
Ve výchozím nastavení je / etc / resolv.konf soubor je propojen s jiným konfiguračním souborem systemd, jak vidíte na obrázku níže. Ale už to nechceme.
Takže odstraňte / etc / resolv.konf odkaz s následujícím příkazem:
$ sudo rm -v / etc / resolv.konf
Nyní vytvořte nový / etc / resolv.konf soubor a nastavte server DNS Google jako výchozí server DNS pomocí následujícího příkazu:
$ echo "nameserver 8.8.8.8 "| sudo tee / etc / resolv.konf
Nyní aktualizujte mezipaměť úložiště balíčků APT pomocí následujícího příkazu:
$ sudo apt aktualizace
Nyní nainstalujte dnsmasq pomocí následujícího příkazu:
$ sudo apt install dnsmasq
dnsmasq by měl být nainstalován.
Konfigurace serveru DNS dnsmasq:
Konfigurační soubor dnsmasq je / etc / dnsmasq.konf. Chcete-li nakonfigurovat dnsmasq jako server DNS, musíte tento soubor upravit.
Výchozí / etc / dnsmasq.konf soubor obsahuje spoustu dokumentace a komentovaných možností. Takže si myslím, že je lepší přejmenovat / etc / dnsmasq.konf soubor do / etc / dnsmasq.konf.bk a vytvořit nový.
Konfigurační soubor můžete přejmenovat pomocí následujícího příkazu:
$ sudo mv -v / etc / dnsmasq.conf / etc / dnsmasq.konf.bk
Nyní vytvořte konfigurační soubor / etc / dnsmasq.konf jak následuje:
$ sudo nano / etc / dnsmasq.konf
Nyní zadejte následující řádky a uložte soubor stisknutím
port = 53
nutná doména
falešný priv
přísný řád
expand-hosts
doména = příklad.com
POZNÁMKA: Změna příklad.com na svůj vlastní název domény.
Nyní restartujte službu dnsmasq pomocí následujícího příkazu:
$ sudo systemctl restart dnsmasq
Ne, chyby. Skvělý!
Nyní musíte nastavit 192.168.10.1 jako výchozí adresa serveru DNS v / etc / resolv.konf.
Chcete-li to provést, otevřete / etc / resolv.konf soubor s následujícím příkazem:
$ sudo nano / etc / resolv.konf
Nyní zadejte nameserver 192.168.10.1 před řádkem nameserver 8.8.8.8 jak je znázorněno na následujícím obrázku. Poté soubor uložte.
A je to.
Přidání záznamů DNS:
Nyní můžete přidat své položky DNS do / etc / hosts soubor.
Nejprve otevřete / etc / hosts soubor s následujícím příkazem:
$ sudo nano / etc / hostsNyní zadejte své položky DNS v následujícím formátu:
IP_ADDR DOMAIN_NAMEPřidal jsem 4 položky router.příklad.com (192.168.10.1), hostitel1.příklad.com (192.168.10.51), hostitel2.příklad.com (192.168.10.52) , a hostitel3.příklad.com (192.168.10.53) jak je uvedeno na snímku obrazovky níže. Můžete přidat tolik záznamů DNS, kolik chcete.
Až budete hotovi, uložte soubor stisknutím
Nyní restartujte službu dnsmasq pomocí následujícího příkazu:
$ sudo systemctl restart dnsmasq
Testování serveru DNS:
Jak vidíte, místní rozlišení DNS funguje.
$ dig router.příklad.com
Funguje také rozlišení internetového jména.
$ dig google.com
Konfigurace serveru DHCP:
Chcete-li nakonfigurovat server DHCP, otevřete konfigurační soubor dnsmasq / etc / dnsmasq.konf opět takto:
$ sudo nano / etc / dnsmasq.konf
Nyní přidejte označené čáry na konec souboru. Poté soubor uložte.
# Konfigurace DHCPdhcp-range = 192.168.10.50,192.168.10.240 255.255.255.0,24 h
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, rozsah dhcp se používá k nastavení rozsahu IP adres, které DHCP server přiřadí hostitelům.
možnost dhcp slouží k nastavení brány (možnost: router), Adresa serveru DNS (možnost: dns-server) a maska sítě (možnost: maska sítě)
dhcp-host se používá 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:
$ sudo systemctl restart dnsmasq
Testování serveru DHCP:
Jak vidíte, počítač hostitel1 dostal IP adresu 192.168.10.51/24 ze serveru DHCP.
Rozlišení DNS funguje také od hostitel1.
Stejně, hostitel2 a hostitel3 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, pak pokladna výchozí konfigurační soubor / etc / dnsmasq.konf (nyní přejmenováno na / etc / dnsmasq.konf.bk). Má podrobný popis všech možností konfigurace dnsmasq.
$ méně / etc / dnsmasq.konf.bk
Výchozí konfigurační soubor dnsmasq serveru Ubuntu Server 18.04 LTS.
Takto nakonfigurujete dnsmasq na Ubuntu Server 18.04 LTS. Děkujeme za přečtení tohoto článku.