Co je DNS a proč je pro internet kritické
Domain Name System (DNS) je distribuovaný hierarchický systém pro pojmenovávání a vyhledávání síťových zdrojů. Překládá lidsky čitelné názvy (např. example.com) na síťové adresy (např. 192.0.2.1 nebo 2001:db8::1) a poskytuje metadata o službách. DNS je navrženo s ohledem na škálovatelnost, redundanci a volnou konzistenci – změny se šíří postupně podle TTL a replikací zón.
Základní komponenty a role
- Rekurzivní resolver: zprostředkovává dotazy klientů (stub resolverů), provádí iterativní dotazy a ukládá odpovědi do mezipaměti.
- Autoritativní server: definitivní zdroj informací pro konkrétní zónu, odpovídá na dotazy bez další rekurze.
- Kořenové servery: udržují kořenovou zónu (.) a delegace na TLD; jsou provozovány v globální síti anycast.
- Registry a registrátoři: spravují TLD (.cz, .com) a poskytují delegace (NS, DS) pro domény druhé úrovně.
- Stub resolver: součást operačního systému či aplikace, která předává dotazy rekurzivnímu resolveru (typicky poskytovateli internetu nebo podnikovému resolveru).
Hierarchie jmenného prostoru a delegace
Jmenný prostor DNS tvoří strom se zónami oddělenými tečkami: kořen → TLD (např. .cz) → doména druhé úrovně (example.cz) → subdomény. Delegace probíhá zápisem záznamů NS v nadřazené zóně a odpovídajících glue záznamů (A/AAAA), pokud se autoritativní servery nacházejí v delegovaném jmenném prostoru.
Typy záznamů a jejich použití
- A / AAAA: adresa hostitele IPv4/IPv6.
- CNAME: alias pro jiné jméno; nesmí koexistovat s dalšími typy záznamů pro stejné jméno.
- NS: autoritativní servery zóny; používají se pro delegace i v apexu zóny.
- MX: směrování pošty domény na poštovní servery s určením priority.
- TXT: volný text; často se používá pro SPF, DKIM, DMARC a ověřování domény.
- SRV: umístění služby včetně protokolu a portu (např. _sip._tcp).
- PTR: reverzní mapování IP → jméno v doménách in-addr.arpa a ip6.arpa.
- SOA: metadata zóny – primární server, e-mail správce, sériové číslo a intervaly replikace.
- CAA: určuje, které certifikační autority (CA) smějí vydávat certifikáty pro doménu.
- DNSKEY / DS / RRSIG / NSEC/NSEC3: prvky DNSSEC pro podepisování a ověřování odpovědí.
- NAPTR / SVCB / HTTPS / TLSA: pokročilé směrování (ENUM, nové modely pro web, DANE).
Jak probíhá překlad jména
- Klient (stub) odešle dotaz rekurzivnímu resolveru (RD=1).
- Resolver zkontroluje mezipaměť; pokud záznam nenajde, dotáže se kořenového serveru a získá NS pro TLD.
- Iterativně pokračuje k TLD a dále k autoritativním serverům hledané zóny.
- Po získání odpovědi ji uloží do mezipaměti podle TTL a vrátí klientovi (RA=1).
- U záznamu CNAME může následovat řetězení dotazů, dokud resolver nezíská konečný typ záznamu (např. A/AAAA).
Formát DNS zprávy a význam polí
- Hlavička: ID transakce, příznaky (QR, OPCODE, AA, TC, RD, RA, AD, CD), RCODE.
- Sekce: Question, Answer, Authority, Additional; komprese jmen pro úsporu místa.
- Přenos: primárně UDP/53 (kvůli latenci), při potřebě přechod na TCP/53 pro velké odpovědi, AXFR/IXFR a DNSSEC.
Mezipaměť, TTL a negativní ukládání do mezipaměti
Mezipaměť zvyšuje výkon a dostupnost; TTL určuje dobu platnosti záznamu. Negativní ukládání do mezipaměti (NXDOMAIN, NODATA) se řídí parametrem minimum v SOA. Chybné či příliš dlouhé TTL komplikuje změny (např. migrace) a zvyšuje riziko nekonzistence.
EDNS(0), fragmentace a limity velikosti
EDNS(0) rozšiřuje velikost odpovědí UDP (obvykle až na 1232–4096 bajtů) a přidává volby (např. DNS Cookie). Velké odpovědi mohou vést k fragmentaci IP paketů a způsobovat ztráty; doporučeným postupem je udržovat odpovědi pod hranicí PMTU nebo u velkých zpráv a DNSSEC upřednostnit TCP/DoT/DoH.
DNSSEC: kryptografická integrita a autenticita
- Princip: autoritativní zóna podepisuje sady záznamů (RRset) klíčem ZSK; KSK slouží k vytvoření důvěryhodného ukotvení (DS v nadřazené zóně).
- Validace: rekurzivní resolver ověřuje RRSIG a buduje řetězec důvěry od kořene až k dotčené zóně.
- Negativní odpovědi: NSEC/NSEC3 dokazují neexistenci jména či typu bez odhalení celé zóny.
- Provoz: rotace klíčů (ZSK častěji než KSK), správné číslování sérií a sledování expirace podpisů.
Soukromí, minimalizace a šifrování přenosu
- QNAME minimization: resolver postupuje po jednotlivých krocích a dotazuje se pouze na nezbytné části jména, čímž snižuje únik informací.
- DNS over TLS (DoT) a DNS over HTTPS (DoH): šifrovaný přenos mezi klientem a resolverem zvyšuje soukromí a integritu.
- DNS over QUIC (DoQ): nízká latence, lepší odolnost vůči ztrátám a blokování na úrovni fronty (head-of-line blocking).
- EDNS Client Subnet (ECS): předávání prefixu klienta pro geografické vyvažování zátěže; má dopad na soukromí a ukládání do mezipaměti.
Dostupnost a škálování: anycast, GeoDNS a vyvažování zátěže
- Anycast: stejná IP adresa je využívána rozsáhlou distribuovanou sítí uzlů; směrování klientů k nejbližšímu uzlu zvyšuje odolnost a snižuje latenci.
- GeoDNS: odlišná odpověď podle lokality tazatele (geolokace IP, ECS); vhodné pro sítě pro doručování obsahu.
- Omezování rychlosti a RRL: omezení odpovědí autoritativních serverů při neobvyklém chování tazatele.
Bezpečnostní hrozby a obrana
- Otrávení mezipaměti: zmírňuje se náhodným výběrem zdrojového portu, náhodnou změnou velikosti písmen (0x20) a validací DNSSEC.
- Amplifikační útoky: malé dotazy versus velké odpovědi; obrana pomocí BCP38 (ochrana proti podvržení zdrojové adresy), RRL a omezení otevřených resolverů.
- Otevřené resolvery: nepovolený přístup z internetu; je třeba je uzavřít nebo přístup filtrovat podle nastavených zásad.
- Malware a DGA: detekce neobvyklých dotazů, RPZ (Response Policy Zones) pro blokování domén.
Správa zón: AXFR/IXFR, NOTIFY, dynamické DNS
- AXFR: úplný přenos zóny na sekundární servery; nastavte ACL a TSIG pro zajištění integrity a ověřování.
- IXFR: přírůstkový přenos změn – šetří šířku pásma a urychluje šíření změn.
- NOTIFY: upozornění sekundárních serverů na změnu mimo standardní interval obnovy.
- Dynamic DNS (RFC 2136): online změny záznamů s ověřováním (TSIG), užitečné pro automatizaci a integraci s DHCP.
Provozní modely: vlastní DNS versus cloudová služba
- On-prem/self-hosted: plná kontrola, možnost nižších nákladů ve velkém měřítku, nutnost vlastního týmu SRE a zajištění bezpečnosti.
- Managed/cloud DNS: globální anycast, SLA, integrace s API a IAM, platba podle počtu dotazů a zón.
- Hybridní model: kritické zóny on-prem s hidden master, globální distribuce prostřednictvím cloudových sekundárních serverů.
Reverzní DNS a reputace e-mailu
Záznamy PTR v in-addr.arpa a ip6.arpa zlepšují doručitelnost e-mailů. Kombinujte je se SPF (TXT), DKIM (veřejný klíč v TXT) a DMARC, který určuje zásady ověřování. Nesoulad mezi A/AAAA a PTR může reputaci zhoršit.
Specifika IPv6
- Záznamy AAAA: dbejte na jejich soulad se záznamy A; upřednostňujte dual-stack a testujte konektivitu.
- ip6.arpa: reverzní zóna využívající formát nibble; kvůli délce názvů je klíčová automatizace.
- MTU a fragmentace: upřednostňujte menší velikosti odpovědí EDNS a DoT/DoH/DoQ.
Vývojové a podnikové vzory: split-horizon a podmíněné předávání dotazů
- Split-horizon: odlišné odpovědi podle zdroje dotazu (interní versus externí pohled); pozor na konzistenci a ukládání do mezipaměti.
- Conditional forwarding: přesměrování dotazů pro vybrané domény na interní autoritativní servery (např. AD DS).
- Vyhledávání služeb: záznamy SRV/SVCB/HTTPS pro lokalizaci služeb, DNS-SD v lokálních sítích, mDNS v prostředích bez infrastruktury.
Monitoring, metriky a observabilita
- Dostupnost a latence: měřte p95/p99 dobu dotazů, chybovost podle RCODE a vytížení zdrojů.
- Poměr zásahů do mezipaměti: klíčová metrika výkonu resolveru, která ovlivňuje náklady i latenci.
- Objem dotazů: QPS, nejčastější domény a typy, anomálie (DGA, nárůsty NXDOMAIN).
- Protokolování: podrobné dotazy zaznamenávejte s ohledem na GDPR a dobu uchovávání; při velkých objemech využívejte výběrové vzorkování.
Nástroje pro správce a diagnostiku
- dig / kdig / drill: ruční dotazy, testování DNSSEC (bit AD), velikostí EDNS a trasování (+trace).
- nslookup: starší nástroj, který se pro pokročilou diagnostiku doporučuje méně.
- tcpdump / Wireshark: kontrola protokolu, fragmentace, opakovaných přenosů a příznaků.
- dnstap: streamování dotazů a odpovědí z resolverů pro analýzu v reálném čase.
Referenční software a jeho role
- Autoritativní servery: BIND, Knot DNS, NSD, PowerDNS Authoritative.
- Rekurzivní resolvery: Unbound, Knot Resolver, PowerDNS Recursor, CoreDNS (často v cloudu či kontejnerech).
- Integrované platformy: Active Directory DNS pro interní sítě se zónami integrovanými s AD.
Provozní bezpečnost a soulad s předpisy
- Zásady přístupu: řízení změn, kontrola publikace zón více osobami, audit záznamů.
- TSIG/TLS: ochrana AXFR/IXFR, rozhraní API a synchronizace.
- Segmentace: oddělení správy, samostatné sítě pro externí autoritativní servery a interní resolvery.
- Hardening: omezení funkcí na nezbytné minimum, omezení rekurze, limity odpovědí a pravidelné aktualizace.
Strategie migrace a změn
- Snížení TTL: několik dní před změnou (např. přesunem hostingu) TTL snižte a po stabilizaci vraťte na původní hodnotu.
- Postupná validace: nejprve proveďte změny v menší subdoméně a sledujte výskyt NXDOMAIN a chyb.
- Návrat k předchozímu stavu: připravte předchozí konfiguraci a skripty pro rychlé obnovení stavu.
Kontrolní seznam osvědčených postupů
- Dva či více nezávislých autoritativních serverů, ideálně v síti anycast a u různých poskytovatelů či v různých ASN.
- Správně nastavené NS a odpovídající glue záznamy; soulad mezi nadřazenou a podřízenou zónou.
- Zóny podepsané pomocí DNSSEC, pravidelná rotace klíčů a validace v resolverech.
- Minimalizace QNAME, DoT/DoH/DoQ pro citlivé segmenty; přiměřeně nastavené velikosti EDNS.
- Uzavřené resolvery, RRL a BCP38 na ochranu proti podvržení zdrojové adresy; RPZ pro filtrování podle zásad, pokud je vyžadováno.
- Automatizace správy zón (GitOps, CI/CD), testování konfigurací a syntaktická validace.
- Monitoring latence p99, chybovosti a poměru zásahů do mezipaměti; upozornění na změny NS/DS/MX.
Závěr
DNS je základní vrstvou internetu, která musí současně splňovat požadavky na výkon, bezpečnost a provozní jednoduchost. Moderní provoz kombinuje DNSSEC, šifrované přenosy, distribuci anycast, pečlivé ukládání do mezipaměti a automatizaci změn. Organizace, které spravují DNS jako kritickou službu s jasně definovanými SLO, robustní observabilitou a bezpečnostními kontrolami, získají vyšší odolnost, lepší uživatelskou zkušenost a nižší provozní riziko.
