DNS systém

DNS systém

Proč DNS tvoří páteř internetu

Systém doménových jmen (Domain Name System, DNS) je distribuovaná, hierarchická a vysoce škálovatelná databáze, která mapuje lidsky čitelné názvy (např. www.example.com) na síťové identifikátory (např. IPv4/IPv6 adresy). DNS umožňuje decentralizovanou správu, vysokou dostupnost i výkonnost prostřednictvím rekurzivních resolverů, autoritativních serverů, kešování a anycast směrování. Vedle základní translace jmen poskytuje také metadata pro e-mail, kryptografické politiky, směrování služeb a bezpečnostní mechanizmy (DNSSEC).

Hierarchie a delegace: root, TLD a zóny

  • Kořenová zóna („.“): nejvyšší úroveň obsahující delegace na TLD (např. .com, .cz, .org), obsluhovaná souborem globálně distribuovaných kořenových serverů s anycastem.
  • TLD registry: správa domén nejvyšší úrovně a delegací na druhou úroveň (např. example.com).
  • Zóna: administrativní celek s vlastní politikou a autoritou; obsahuje SOA záznam, NS a další zdroje. Delegace probíhá pomocí NS záznamů a případně glue záznamů (A/AAAA), pokud autoritativní servery leží v delegované doméně.

Role resolverů: stub, rekurzivní a forwardery

Koncové systémy používají stub resolver (v OS nebo prohlížeči), který předává dotazy rekurzivnímu resolveru (ISP, podnik, veřejná služba). Rekurzivní resolver provede iterativní dotazování od kořene po autoritativní servery cílové zóny a výsledek kešuje podle TTL. Forwarder přeposílá dotazy do nadřazeného rekurzivního resolveru, čímž centralizuje keš a politiku filtrování.

Základní typy DNS záznamů

  • A / AAAA: mapování jména na IPv4/IPv6 adresu.
  • CNAME: alias na jiné jméno; nesmí koexistovat s jinými typy na stejné jmenné etiketě.
  • NS: autoritativní servery pro zónu (delegace).
  • SOA: údaje o zóně (primární server, e-mail správce, sériové číslo, refresh/retry/expire/minimum).
  • MX: poštovní směrování (prioritizace podle preference).
  • TXT: volné textové údaje; běžně SPF, DKIM a DMARC politiky pro e-mail.
  • PTR: reverzní mapování IP na jméno (in-addr.arpa, ip6.arpa).
  • SRV: obecné směrování služeb (priorita, váha, port, cíl).
  • CAA: omezení certifikačních autorit, které mohou vydat certifikát pro doménu.
  • SVCB / HTTPS: moderní záznamy pro popis parametrů služby (např. alpn, doh, dohpath) a výkonově efektivní směrování.

Jak probíhá rozlišení jména krok za krokem

  1. Stub resolver odešle dotaz (např. A záznam pro www.example.com) rekurzivnímu resolveru.
  2. Rekurzivní resolver zkontroluje keš; pokud neexistuje platný záznam, ptá se kořenových serverů na NS pro .com.
  3. Od TLD .com získá NS pro example.com (a případné glue A/AAAA).
  4. Dotáže se autoritativního serveru example.com na www a obdrží finální odpověď (A/AAAA nebo CNAME řetězec).
  5. Výsledek uloží do keše dle TTL a vrátí stub resolveru.

Kešování a TTL: výkon vs. čerstvost

TTL (Time To Live) řídí dobu, po kterou může být odpověď držena v keši. Vyšší TTL zvyšuje výkon a snižuje latenci i náklady, ale zpomaluje propagaci změn. Existuje i negativní kešování (NXDOMAIN) řízené hodnotou v SOA (minimum pole nebo explicitní TTL u odpovědi). Správné plánování TTL je klíčové při migracích a změnách IP.

DNS a transportní protokoly: UDP/TCP, EDNS(0) a fragmentace

  • UDP port 53 je default pro dotazy/odpovědi; velké odpovědi (nad limit) se přepnou na TCP.
  • EDNS(0) rozšiřuje maximální velikost zprávy a umožňuje nové volby (např. DNS Cookies, ECS).
  • Fragmentace IP paketů může zvyšovat riziko ztrát; proto je běžné omezovat velikosti EDNS a používat TCP pro rozsáhlé odpovědi (např. DNSSEC).

Bezpečnostní rozšíření DNSSEC: autenticita a integrita

DNSSEC přidává kryptografické podpisy (RRSIG) nad záznamy a veřejné klíče (DNSKEY). Delegace důvěry probíhá přes DS záznamy v nadřazené zóně a řetězí se až ke kořeni, jehož klíč je integrován jako trust anchor. Validující resolver ověřuje podpisy a chrání proti podvržení odpovědí. Pro negativní odpovědi využívá NSEC/NSEC3, které prokazují neexistenci jména či typu.

Ochrana soukromí a moderní protokoly: DoT/DoH, QNAME minimization

  • DNS over TLS (DoT) a DNS over HTTPS (DoH) šifrují transport mezi klientem a rekurzivním resolverem, čímž brání odposlechu a manipulaci na trase.
  • QNAME minimization snižuje množství informací sdílených s nadřazenými autoritami (resolver posílá jen nezbytnou část názvu).
  • DNS Cookies a 0x20 bit encoding pomáhají zmírňovat některé útoky na spoofing a reflexi.

EDNS Client Subnet (ECS) a geolokační odpovědi

ECS dovoluje rekurzivnímu resolveru předat autoritativní službě zkrácený prefix klientovy adresy, aby CDN mohly vracet geograficky optimalizované IP. Zlepšuje výkon, ale má dopad na soukromí a kešovatelnost (větší fragmentace keše). Doporučuje se opatrné používání s minimálním prefixem.

Správa zón: SOA, sériové číslo, NOTIFY, AXFR/IXFR

  • SOA udává sériové číslo zóny a časování pro sekundární servery (refresh, retry, expire).
  • NOTIFY aktivně informuje sekundáry o změně, urychluje propagaci.
  • AXFR (full) a IXFR (inkrementální) zajišťují přenos zón; přístup se zabezpečuje přes TSIG (sdílené klíče) a řízené ACL.
  • DDNS (dynamické aktualizace podle RFC 2136) umožňuje klientům a službám automaticky vytvářet a měnit záznamy, často s TSIG.

Internationalized Domain Names (IDN) a Punycode

IDN umožňují ne-ASCII znaky v doménách. Na drátu se používá Punycode (ACE, prefix xn--). Bezpečnostní praxí je prevence homoglyfních útoků (vizuálně podobné znaky) a rozumné politiky registrátorů.

Reverzní DNS a jeho význam

Reverzní strom in-addr.arpa (IPv4) a ip6.arpa (IPv6) mapuje IP na jména pomocí PTR. Důležité pro diagnostiku, reputaci e-mailových serverů a některé bezpečnostní kontroly. Delegace reverzních zón následuje přiřazení bloků adres poskytovateli či organizaci.

DNS pro e-mailovou bezpečnost

  • SPF (TXT): definuje, které servery smí odesílat poštu pro doménu.
  • DKIM (TXT): veřejný klíč pro ověření podpisu v e-mailové zprávě.
  • DMARC (TXT): politika vyhodnocení SPF/DKIM a reportování; zvyšuje odolnost proti phishingu a spoofingu.

Balancování a směrování služeb přes DNS

  • Round-robin: více A/AAAA pro stejné jméno, jednoduché rozložení zátěže.
  • GeoDNS / latency-based: rozdílné odpovědi podle lokality či měření latence.
  • Failover: krátké TTL a monitorované přepínání na záložní IP; pokročileji SVCB/HTTPS s parametry služby.
  • SRV: explicitní směrování na porty a priority (např. VoIP, LDAP), NAPTR pro přepis pravidel (např. ENUM).

Útoky a obrana: cache poisoning, Kaminsky, DDoS amplifikace

  • Cache poisoning: podvržení odpovědí rekurzivnímu resolveru; mitigace zahrnuje náhodný zdrojový port, nepředvídatelný identifikátor dotazu, 0x20 encoding a validaci přes DNSSEC.
  • Kaminsky attack: zrychlené hádání autoritativních dat pomocí paralelních dotazů; mitigace jako výše, plus pečlivé implementace.
  • DDoS amplifikace: zneužití otevřených resolverů a velkých odpovědí (ANY, DNSSEC) k zesílení útoku; obrana pomocí uzavření resolveru, Response Rate Limiting (RRL), BCP 38 (anti-spoofing), omezení EDNS velikostí a anycastu.

Provozní praxe a observabilita

  • Monitoring: latence rozlišení, míra chyb (SERVFAIL, NXDOMAIN), velikost keše, hit-ratio, kapacita QPS, saturace CPU a sítě, velikost odpovědí.
  • Logování: dotazy/odpovědi (s anonymizací), validace DNSSEC, odchylky v TTL, změny zón a přenosy.
  • Testy: pravidelné ověření delegací, konzistence NS a glue, správnost SOA, dosažitelnost přes TCP/UDP, validace DNSSEC řetězce.
  • Politiky: omezení rekurze na důvěryhodné klienty, rate-limiting, QNAME minimization a šifrované transporty.

Škálování a vysoká dostupnost autoritativních i rekurzivních služeb

  • Anycast: stejné IP adresy inzerované z více geografických PoP pro nižší latenci a odolnost.
  • Horizontální škálování: více nezávislých instancí s sdílenou nebo replikovanou konfigurací; oddělení roli rekurzivních a autoritativních serverů.
  • Keš a prefetch: prodloužení čerstvosti populárních záznamů, serve-stale režim při výpadcích autoritativních serverů.

Konfigurace TTL a plánování změn (propagace)

„Propagace DNS“ není push mechanizmus, ale expirování keší. Před migrací snižte TTL (např. několik dní předem), proveďte změny a TTL následně vraťte. Sledujte autoritativní odpovědi, konzistenci NS a stav DNSSEC (DS v TLD před změnou klíčů).

DNS v lokálních sítích, mDNS a service discovery

  • mDNS a DNS-SD (např. Bonjour) umožňují objevování služeb bez centrální autority v lokálním segmentu (.local).
  • Split-horizon DNS: rozdílné odpovědi pro interní a externí klienty; vyžaduje disciplinu v řízení zón a přístupů.
  • Policy DNS: filtrace škodlivých domén, blokace C2 a phishingu na úrovni resolveru s threat-intel feedy.

Kompatibilita s IPv6 a dual-stack scénáře

Vedle A záznamů je třeba poskytovat AAAA; testujte dosah IPv6 a preferenci cest (Happy Eyeballs). Reverzní zóny pro IPv6 používají ip6.arpa s hexadecimálními delegacemi na nibble hranicích.

Best practices pro správce domén a DNS služeb

  • Udržujte konzistenci NS a glue u delegací; používejte alespoň dva nezávislé autoritativní servery v různých lokalitách.
  • Validujte a podepisujte zóny DNSSEC; zavádějte automatizovanou rotaci klíčů (ZSK/KSK) a pečlivé publikování DS v TLD.
  • Omezte rekurzi pouze na interní klienty; nasazujte DoT/DoH pro ochranu klientů a QNAME minimization pro soukromí.
  • Chraňte přenosy zón pomocí TSIG a whitelistů; sledujte pokusy o AXFR/IXFR z neautorizovaných adres.
  • Plánujte TTL s ohledem na byznys (rychlé změny vs. snížení zátěže); pro kritické záznamy používejte nižší TTL.
  • Implementujte RRL, limity EDNS a anycast pro odolnost proti DDoS; pravidelně auditujte otevřené resolvery.

Závěr: DNS jako adaptivní, bezpečný a škálovatelný systém

DNS je více než jednoduchý telefonní seznam internetu. Díky hierarchii, delegacím, kešování, moderním typům záznamů a bezpečnostním rozšířením zajišťuje rychlé, spolehlivé a bezpečné směrování k digitálním službám. Správná správa DNS – včetně DNSSEC, šifrovaných transportů, rozumných TTL a provozních kontrol – je zásadní pro dostupnost i bezpečnost dnešních aplikací a infrastruktur.

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *