DNS systémy

DNS systémy

Co je DNS a proč je kritické pro Internet

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 pro škálování, redundanci a loose consistency – změny se šíří postupně podle TTL a replikací zón.

Základní komponenty a role

  • Rekurzivní resolver: zprostředkovatel pro klienty (stub resolvery), provádí iterativní dotazy a cacheuje odpovědi.
  • Autoritativní server: definitivní zdroj 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; provozovány v globální anycast síti.
  • Registry a registrátoři: správa TLD (.cz, .com) a poskytování delegací (NS, DS) pro druhé úrovně.
  • Stub resolver: součást OS/aplikace, předává dotazy rekurzivnímu resolveru (typicky ISP či podnikový).

Hierarchie jmenného prostoru a delegace

DNS jmenný prostor je strom se zónami oddělenými tečkami: kořen → TLD (např. .cz) → druhá úroveň (example.cz) → subdomény. Delegace probíhá zapsáním záznamů NS v nadřazené zóně a odpovídajícími glue záznamy (A/AAAA), pokud jsou autoritativní servery v delegovaném jmenném prostoru.

Typy záznamů a jejich použití

  • A / AAAA: IPv4/IPv6 adresa hostu.
  • CNAME: alias na jiné jméno; nesmí koexistovat s dalšími typy na stejném jméně.
  • NS: autoritativní servery zóny; používány pro delegace i v apexu zóny.
  • MX: poštovní směrování domény na mail servery s prioritami.
  • TXT: volný text; často pro SPF, DKIM, DMARC, ověřování domény.
  • SRV: umístění služby s protokolem a portem (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 časování replikací.
  • CAA: povolení CA vydávat certifikáty pro doménu.
  • DNSKEY / DS / RRSIG / NSEC/NSEC3: prvky DNSSEC pro podepisování a validaci odpovědí.
  • NAPTR / SVCB / HTTPS / TLSA: pokročilé směrování (ENUM, nové modely pro web, DANE).

Jak probíhá rezoluce jména

  1. Klient (stub) pošle dotaz na rekurzivní resolver (RD=1).
  2. Resolver zkontroluje cache; pokud není, dotáže se kořene, získá NS pro TLD.
  3. Iterativně pokračuje k TLD a dále k autoritativním serverům pro hledanou zónu.
  4. Po získání odpovědi ji uloží do cache podle TTL a vrátí klientovi (RA=1).
  5. Pro CNAME může následovat řetězení dotazů, dokud nedostane konečný typ (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.
  • Přenos: primárně UDP/53 (kvůli latenci), fallback na TCP/53 pro velké odpovědi, AXFR/IXFR a DNSSEC.

Cache, TTL a negativní caching

Cache zvyšuje výkon a dostupnost; TTL určuje dobu platnosti záznamu. Negativní caching (NXDOMAIN, NODATA) je řízen 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 UDP odpovědí (obvykle až 1232–4096 bajtů), přidává volby (např. DNS Cookie). Velké odpovědi mohou fragmentovat IP pakety a způsobovat ztráty; best practice je držet odpovědi pod hranicí PMTU nebo preferovat TCP/DoT/DoH pro velké zprávy a DNSSEC.

DNSSEC: kryptografická integrita a autenticita

  • Princip: autoritativní zóna podepisuje sady záznamů (RRset) klíčem ZSK, KSK slouží pro důvěryhodné zakotvení (DS v nadřazené zóně).
  • Validace: rekurzivní resolver ověřuje RRSIG a staví řetěz důvěry od kořene až k dotčené zóně.
  • Negativní odpovědi: NSEC/NSEC3 dokazují neexistenci jména/typu bez úniku celé zóny.
  • Operace: rotace klíčů (ZSK častěji než KSK), správné sériování a hlídání expirací podpisů.

Soukromí, minimalizace a šifrování transportu

  • QNAME minimization: resolver dotazuje po krocích jen nezbytné části jména ke snížení úniku informací.
  • DNS over TLS (DoT) a DNS over HTTPS (DoH): šifrovaný transport mezi klientem a resolverem zvyšuje soukromí a integritu.
  • DNS over QUIC (DoQ): nízká latence, lepší odolnost vůči ztrátám a head-of-line blocking.
  • EDNS Client Subnet (ECS): předávání prefixu klienta pro geo-balancing; má dopady na soukromí a cache.

Dostupnost a škálování: anycast, geoDNS a balancing

  • Anycast: stejné IP rozsáhlé distribuované síti uzlů; směrování klienty k nejbližšímu uzlu zvyšuje odolnost a snižuje latenci.
  • GeoDNS: různá odpověď podle lokality tazatele (IP geolokace, ECS); vhodné pro obsahové sítě.
  • Rate-limiting a RRL: omezení odpovědí z autoritativních serverů při anomálním chování tazatele.

Bezpečnostní hrozby a obrana

  • Cache poisoning: mitigace randomizací zdrojového portu, 0x20 case randomizací, DNSSEC validací.
  • Amplifikační útoky: malé dotazy vs. velké odpovědi; obrana přes BCP38 (anti-spoofing), RRL a omezení otevřených resolverů.
  • Otevřené resolvery: nepovolený přístup z internetu; zavřít či filtrovat podle politiky.
  • Malware a DGA: detekce anomálních dotazů, RPZ (Response Policy Zones) pro blokace 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 integritu a autentizaci.
  • IXFR: inkrementální přenos změn – šetří šířku pásma a zrychluje propagaci.
  • NOTIFY: signalizace změny sekundárům mimo standardní refresh interval.
  • Dynamic DNS (RFC 2136): online změny záznamů s ověřením (TSIG), užitečné pro automatizaci a DHCP integraci.

Provozní modely: vlastní DNS vs. cloudová služba

  • On-prem/self-hosted: plná kontrola, možné nižší náklady ve velkém měřítku, nutnost vlastního SRE a bezpečnosti.
  • Managed/cloud DNS: globální anycast, SLA, integrace s API a IAM, platba dle dotazů a zón.
  • Hybrid: kritické zóny on-prem s hidden master, globální distribuce přes cloud sekundáry.

Reverzní DNS a e-mailová reputace

PTR záznamy v in-addr.arpa a ip6.arpa zlepšují doručitelnost e-mailu. Kombinujte s SPF (TXT), DKIM (public key v TXT) a DMARC pro politiku ověřování. Nesoulad mezi A/AAAA a PTR může zhoršit reputaci.

Specifika pro IPv6

  • AAAA záznamy: dbejte na paritu s A; preferujte dual-stack a testujte konektivitu.
  • ip6.arpa: reverzní zóna s nibble formátem; automatizace je klíčová kvůli délce jmen.
  • MTU a fragmentace: preferujte menší EDNS velikosti odpovědí a DoT/DoH/DoQ.

Vývojové a podnikové vzory: split-horizon a conditional forwarding

  • Split-horizon: rozdílné odpovědi podle zdroje dotazu (interní vs. externí pohled); pozor na konzistenci a cachování.
  • Conditional forwarding: přesměrování dotazů pro vybrané domény na interní autoritativní servery (např. AD DS).
  • Service discovery: SRV/SVCB/HTTPS záznamy pro lokalizaci služeb, DNS-SD v lokálních sítích, mDNS pro bezinfrastrukturní prostředí.

Monitoring, metriky a observabilita

  • Dostupnost a latence: měřte p95/p99 doby dotazů, chybovost podle RCODE, saturaci zdrojů.
  • Cache hit ratio: klíčová metrika výkonu resolveru, ovlivňuje náklady i latenci.
  • Objem dotazů: QPS, top domény/typy, anomálie (DGA, skoky v NXDOMAIN).
  • Logování: detailní dotazy s ohledem na GDPR a uchovávání; sampling pro vysoké objemy.

Nástroje pro správce a diagnostiku

  • dig / kdig / drill: ruční dotazy, test DNSSEC (AD bit), EDNS velikosti, trace (+trace).
  • nslookup: starší nástroj, méně doporučovaný pro pokročilou diagnostiku.
  • tcpdump / Wireshark: inspekce protokolu, fragmentace, retransmise, flagy.
  • dnstap: streamování dotazů/odpovědí z resolverů pro analýzu v reálném čase.

Referenční software a role

  • Autoritativní servery: BIND, Knot DNS, NSD, PowerDNS Authoritative.
  • Rekurzivní resolvery: Unbound, Knot Resolver, PowerDNS Recursor, CoreDNS (často v cloudu/kontejnerech).
  • Integrované platformy: Active Directory DNS pro interní sítě s AD integrovanými zónami.

Provozní bezpečnost a compliance

  • Přístupové politiky: řízení změn, více očí na publikaci zón, audit záznamů.
  • TSIG/TLS: ochrana AXFR/IXFR, rozhraní API a synchronizací.
  • Segmentace: oddělení managementu, oddělené sítě pro externí autoritativní a interní resolvery.
  • Hardening: minimalizace funkcí, omezení rekurze, limity na odpovědi, pravidelné aktualizace.

Migrační a změnové strategie

  • Snížení TTL: několik dnů před změnou (např. přesun hostingu) snížit TTL, po stabilizaci vrátit.
  • Postupná validace: canary změny v menší subdoméně, monitoring NXDOMAIN a chyb.
  • Rollback: připravená předchozí konfigurace, skripty pro rychlé navrácení stavu.

Checklist nejlepší praxe

  • Dva a více nezávislých autoritativních serverů, ideálně anycast, různí poskytovatelé/ASN.
  • Správně nastavené NS a odpovídající glue; konzistence mezi parent a child zónou.
  • DNSSEC podepsané zóny, pravidelná rotace klíčů a validace v resolverech.
  • QNAME minimization, DoT/DoH/DoQ pro citlivé segmenty; rozumné EDNS velikosti.
  • Uzavřené resolvery, RRL a BCP38 proti spoofingu; RPZ pro politické filtrování, pokud je vyžadováno.
  • Automatizace správy zón (GitOps, CI/CD), testy konfigurací a syntaktická validace.
  • Monitoring p99 latence, chybovosti a cache hit ratio; alerting na změny NS/DS/MX.

Závěr

DNS je základní vrstva internetu, která musí zároveň splnit nároky na výkon, bezpečnost a provozní jednoduchost. Moderní provoz kombinuje DNSSEC, šifrované transporty, anycastovou distribuci, pečlivé cacheování a automatizaci změn. Organizace, které spravují DNS jako kritickou službu s jasnými SLO, robustní observabilitou a bezpečnostními kontrolami, získají vyšší odolnost, lepší uživatelskou zkušenost a nižší provozní riziko.

Pridaj komentár

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