Domain Name Service (DNS) (Čeština)

Domain Name Service (DNS) je internetová služba, která mapuje IP adresy a plně kvalifikované názvy domén (FQDN) k sobě. Tímto způsobem DNS zmírňuje potřebu zapamatovat si IP adresy. Počítače, které spouštějí DNS, se nazývají jmenné servery. Ubuntu je dodáván s BIND (Berkley Internet pojmenování démona), nejběžnější program používaný pro udržení jmenného serveru v Linuxu.,

V terminálu řádku, zadejte následující příkaz pro instalaci serveru dns:

sudo apt install bind9

velmi užitečné balíček pro testování a řešení problémů DNS problémy, je dnsutils balíček. Velmi často tyto nástroje budou již nainstalována, ale pro kontrolu a/nebo nainstalovat dnsutils zadejte následující:

sudo apt install dnsutils

Nastavení

Existuje mnoho způsobů, jak nakonfigurovat server BIND9. Některé z nejběžnějších konfigurací jsou caching nameserver, primární server a sekundární server.,

  • Pokud je nakonfigurován jako caching nameserver BIND9 bude najít odpověď na dotazy na názvy a pamatovat si odpověď, když doména je dotázána znovu.

  • jako primární server čte BIND9 data pro zónu ze souboru na svém hostiteli a je autoritativní pro tuto zónu.

  • jako sekundární server získá bind9 data zóny z jiného jmenného serveru, který je pro zónu autoritativní.

přehled

konfigurační soubory DNS jsou uloženy v adresáři /etc/bind., Hlavní konfigurační soubor je /etc/bind/named.conf, který v rozvržení poskytována balíček zahrnuje jen tyto soubory.

kořenové nameservery byly popsány v souboru /etc/bind/db.root. To je nyní k dispozici místo /usr/share/dns/root.hints soubor dodávány s dns-root-data balíček, a je odkazoval se na v named.conf.default-zones konfiguračního souboru výše.

je možné nakonfigurovat stejný server jako server pro ukládání do mezipaměti, primární a sekundární: vše závisí na zónách, které slouží., Server může být začátkem autority (SOA) pro jednu zónu a zároveň poskytuje sekundární službu pro jinou zónu. Po celou dobu poskytování služeb ukládání do mezipaměti pro hostitele v místní síti LAN.

Caching Nameserver

výchozí konfigurace funguje jako server pro ukládání do mezipaměti. Jednoduše odkomentovat a upravit /etc/bind/named.conf.options nastavit IP adresy, váš ISP servery DNS:

forwarders { 1.2.3.4; 5.6.7.8;};

Poznámka:

Nahradit 1.2.3.4 5.6.7.8 s IP Adresy aktuální nameservery.,

Chcete-li povolit novou konfiguraci, restartujte server DNS. Z terminálu výzva:

sudo systemctl restart bind9.service

viz dig pro informace o testování mezipaměti DNS server.

Primární Server

V této části BIND9 bude nakonfigurován jako hlavní server pro doménu example.com. Jednoduše nahraďte example.com FQDN (plně kvalifikovaný název domény).,

Vpřed Zóny Souboru

přidat zóny DNS server BIND9, soustružení BIND9 na Primární server, nejprve upravit /etc/bind/named.conf.local:

zone "example.com" { type master; file "/etc/bind/db.example.com";};

Poznámka:

Pokud bind bude dostávat automatické aktualizace jako soubor s DDNS, pak použijte /var/lib/bind/db.example.com místo /etc/bind/db.example.com oba tady a v kopii příkazu níže.,

použít existující soubor zóny jako šablonu k vytvoření /etc/bind/db.example.com souboru:

sudo cp /etc/bind/db.local /etc/bind/db.example.com

Upravte nový soubor zóny /etc/bind/db.example.com localhost. je plně kvalifikovaný název DOMÉNY pro váš server, takže další . na konci., Změnit 127.0.0.1 nameserver je IP Adresa a root.localhost, aby platnou e-mailovou adresu, ale s . namísto obvyklého @ symbol, znovu opouštět . na konci. Změňte komentář a označte doménu, pro kterou je tento soubor určen.

vytvořte záznam pro základní doménu, example.com. Také, vytvořit záznam pro ns.example.com název serveru v tomto příkladu:

musíte zvýšit Sériové Číslo pokaždé, když provedete změny v souboru zóny., Pokud provedete více změn před restartováním BIND9, jednoduše zvyšte sériové jednou.

nyní můžete přidat záznamy DNS do spodní části souboru zóny. Podrobnosti viz běžné typy záznamů.,

Poznámka:

Mnoho admini chtěli použít poslední data upravovat jako sériové zóny, jako 2020012100 což je yyyymmddss (kde ss je Pořadové Číslo)

Jakmile jste provedli změny v souboru zóny BIND9 musí být restartován, aby se změny projevily:

sudo systemctl restart bind9.service

Reverzní Zóny Souboru

Nyní, že zóny je nastavení a překladu názvů na Adresy IP, Reverzní zóny musí být přidán umožňuje DNS vyřešit adresu na jméno.,

Upravit /etc/bind/named.conf.local a přidejte následující:

zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/db.192";};

Poznámka:

Nahradit 1.168.192 s první tři oktety bez ohledu na síť, kterou používáte. Také pojmenujte soubor zóny /etc/bind/db.192 odpovídajícím způsobem. Mělo by odpovídat prvnímu oktetu vaší sítě.,

vytvořit /etc/bind/db.192 file:

sudo cp /etc/bind/db.127 /etc/bind/db.192

Další edit /etc/bind/db.192 mění stejné možnosti jako /etc/bind/db.example.com:

Sériové Číslo v Reverzní zóně, musí být zvýšen na každou změnu stejně. Pro každý záznam konfigurace v /etc/bind/db.example.com, to je na jinou adresu, musíte vytvořit záznam PTR v /etc/bind/db.192.,

Po vytvoření zóny zpětného soubor restart BIND9:

sudo systemctl restart bind9.service

Sekundární Server

Jakmile Primární Server byl nakonfigurován Sekundární Server je vysoce doporučeno v zájmu zachování dostupnosti domény by měl Primární nedostupná.

nejprve je třeba na primárním serveru povolit přenos zóny., Přidat do allow-transfer možnost příkladem Vpřed a zóny Zpětného definice je v /etc/bind/named.conf.local:

Poznámka:

Nahradit 192.168.1.11 Adresa IP Sekundární nameserver.

Restart BIND9 na Primární server:

sudo systemctl restart bind9.service

Next, na Sekundární server, nainstalujte balíček bind9 stejným způsobem jako na Primární., Pak upravit /etc/bind/named.conf.local a přidat následující prohlášení pro Vpřed a Vzad zón:

Poznámka:

Nahradit 192.168.1.10 s IP Adresu vašeho Primárního nameserveru.,

Restart BIND9 na Sekundární server:

sudo systemctl restart bind9.service

V /var/log/syslog měli byste vidět něco podobného následujícímu (některé linky byly rozděleny, aby se vešly na formát tohoto dokumentu):

Poznámka:

Poznámka: zóna je pouze převeden, pokud Sériové Číslo Primární je větší, než na Střední., Pokud chcete mít svůj Primární DNS oznamující další Sekundární Servery DNS zóny změny, můžete přidat also-notify { ipaddress; }; /etc/bind/named.conf.local jak je uvedeno v příkladu níže:

Poznámka:

výchozí adresář pro non-autoritativní zóna soubory /var/cache/bind/. Tento adresář je také nakonfigurován v aplikaci AppArmor, aby do něj mohl napsat pojmenovaný démon. Pro více informací o AppArmor viz Security-AppArmor.,

řešení problémů

tato část se zabývá diagnostikou problémů s konfiguracemi DNS a BIND9.

testování

resolv.conf

prvním krokem při testování BIND9 je přidání IP adresy nameserveru do resolveru hosts. Primární nameserver by měl být nakonfigurován, stejně jako jiný hostitel, aby znovu zkontroloval věci. Podrobnosti o přidávání adres serveru nameserver pro síťové klienty naleznete v konfiguraci klienta DNS., Na konci své nameserver /etc/resolv.conf by měl být ukázal na 127.0.0.53 a měli byste mít search parametr pro vaši doménu. Něco jako toto:

nameserver 127.0.0.53search example.com

zjistit, které server DNS místní resolver používá, run:

systemd-resolve --status

Poznámka:

měli Byste také přidat Adresu IP Sekundární nameserver, aby vaše konfigurace klienta v případě, že Primární není k dispozici.,

kopat

Pokud jste nainstalovali balíčku dnsutils si můžete vyzkoušet své nastavení pomocí DNS lookup utility kopat:

  • Po instalaci BIND9 použití kopat proti loopback rozhraní, aby se ujistil, že je naslouchání na portu 53.,i>

    Pokud jste nakonfigurovali server BIND9 jako Caching nameserver „kopat“ externí domény pro kontrolu času dotazu:

    dig ubuntu.com

    Poznámka: čas dotazu ke konci výstupu příkazu:

    ;; Query time: 49 msec

    Po druhé kopat tam by mělo být zlepšení:

    ;; Query time: 1 msec

ping

ukazují, jak aplikace využít DNS k překladu názvu hostitele, použijte nástroj ping pošle ICMP echo request:

ping example.com

testy, pokud nameserver lze vyřešit název ns.example.com na IP Adresu., Výstup příkazu by měl vypadat:

named-checkzone

skvělý způsob, jak vyzkoušet své zóny souborů pomocí named-checkzone nástroj nainstalován bind9 balíček. Tento nástroj vám umožní ujistit se, že konfigurace je správná před restartováním BIND9 a provedením změn naživo.,

  • vyzkoušet náš příklad Vpřed souboru zóny zadejte následující z příkazového řádku:

    named-checkzone example.com /etc/bind/db.example.com

    Pokud je vše nakonfigurováno správně, měli byste vidět výstup podobný:

    zone example.com/IN: loaded serial 6OK
  • Podobně, zkušební zóny Zpětného soubor, zadejte následující:

    named-checkzone 1.168.192.in-addr.arpa /etc/bind/db.192

    výstup by měl být podobný:

    zone 1.168.192.in-addr.arpa/IN: loaded serial 3OK

Poznámka:

Sériové Číslo zónového souboru bude pravděpodobně jiná.,

Rychlé dočasné protokolování dotazu

rndc nástroj, můžete rychle zapnout protokolování dotazu zapnutí a vypnutí, bez restartování služby nebo změnou konfiguračního souboru.

zapnout protokolování dotazu, spuštění:

sudo rndc querylog on

Podobně, vypněte jej, spusťte:

sudo rndc querylog off

protokoly bude zaslána syslog a zobrazí se v /var/log/syslog ve výchozím nastavení:

Poznámka:

množství protokolů generovaných systémem umožňující querylog mohl by to být obrovský!,

Přihlášení

BIND9 má širokou škálu protokolování možnosti konfigurace k dispozici, ale dvě hlavní jsou kanál a kategorie, které se konfigurovat protokoly, kde jít, a jaké informace dostane přihlášen, resp.

Pokud žádné možnosti protokolování jsou nakonfigurovány výchozí nastavení je:

logging { category default { default_syslog; default_debug; }; category unmatched { null; };};

Pojďme místo toho nakonfigurujte server BIND9 posílat zprávy ladění týkající se DNS dotazy do samostatného souboru.

musíme nakonfigurovat kanál, abychom určili, do kterého souboru se mají zprávy odesílat, a kategorii., V tomto příkladu bude kategorie zaznamenávat všechny dotazy. Edit /etc/bind/named.conf.local a přidejte následující:

logging { channel query.log { file "/var/log/named/query.log"; severity debug 3; }; category queries { query.log; };};

Poznámka:

debug volba může být nastavena od 1 do 3. Pokud úroveň není zadána, úroveň 1 je výchozí.,

  • Od jménem daemon běží jako bind uživatele /var/log/named adresář musí být vytvořen a vlastnictví změněno:

    sudo mkdir /var/log/namedsudo chown bind:bind /var/log/named
  • restart BIND9, aby se změny projevily:

    sudo systemctl restart bind9.service

měli Byste vidět soubor /var/log/named/query.log vyplní se informace o dotazu. Toto je jednoduchý příklad možností protokolování BIND9. Pro pokrytí pokročilých možností viz více informací.,

běžné typy záznamů

tato část pokrývá některé z nejběžnějších typů záznamů DNS.

  • A záznam: tento záznam mapuje IP adresu názvu hostitele.

    www IN A 192.168.1.12
  • CNAME nahrát: slouží k vytvoření aliasu k existující záznam. Nelze vytvořit záznam CNAME směřující na jiný záznam CNAME.

    web IN CNAME www
  • MX record: Používá se k definování, kam má být e-mail odeslán., Musí ukazovat na záznam A, nikoli CNAME.

    @ IN MX 1 mail.example.com.mail IN A 192.168.1.13
  • NS record: Používá se k definování, které servery slouží kopiím zóny. Musí ukazovat na záznam A, nikoli CNAME. Zde jsou definovány primární a sekundární servery.

    @ IN NS ns.example.com.@ IN NS ns2.example.com.ns IN A 192.168.1.10ns2 IN A 192.168.1.11

Další Informace

  • proti Proudu BIND9 Dokumentaci

  • Bind9.net má vazby na velkou sbírku DNS a BIND9 zdrojů.,

  • DNS a BIND je populární kniha nyní v jeho pátém vydání. Nyní je také DNS a BIND na IPv6 knize.

  • skvělé místo, kde můžete požádat o pomoc BIND9 a zapojit se do komunity serveru Ubuntu, je IRC kanál #ubuntu-server na freenode.

Naposledy aktualizováno před 10 měsíci. Pomozte vylepšit tento dokument ve fóru.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Přejít k navigační liště