Prejsť na obsah

Nastavenia súborov cookie

Vyberte, aké druhy súborov cookie povolíte. Svoj výber môžete kedykoľvek zmeniť cez Nastavenia súborov cookie v dolnej časti každej stránky. Vyhlásenie o ochrane osobných údajov

Nevyhnutné

Vždy zapnuté

Potrebné na prihlásenie, uchovanie košíka a zapamätanie vašich volieb. Sú vždy zapnuté.

Ktoré súbory cookie?
  • weboke_sessie, weboke_klant, weboke_remember: vaša relácia a trvalé prihlásenie
  • weboke_basket: váš košík
  • wkBtwIncl: zobrazovanie cien s DPH alebo bez DPH
  • wok_cookies: váš výber súborov cookie, 12 mesiacov

Merajú, ktorá reklama vedie k návšteve alebo objednávke, aby sme neplatili za reklamy, ktoré nič neprinášajú.

Ktoré súbory cookie?
  • Google Ads cez Google Tag Manager (_gcl_au, _gcl_aw), najviac 90 dní
  • OpenAI Ads, reklamy v ChatGPT
  • wok_aff: ktorý partner vás k nám odporučil (partnerský program), 60 dní

4,6

Krajina a jazyk

Každá krajina má vlastný web s cenami a DPH danej krajiny.

Zobraziť

Cesta jedného DNS dotazu

Modul 1: Čo je DNS? · Čas čítania: 8 min

Cieľ lekcie: Po tejto lekcii dokážete krok za krokom vysvetliť, ako resolver nájde odpoveď, a kde sa po ceste odpovede zapamätávajú.

Kľúčové pojmy: resolver (rekurzívny), rootserver, TLD server, autoritatívny menný server, odkaz (delegácia), cache

Dva druhy DNS serverov

V lekcii 1.1 ste videli, že DNS je rozdelený: nikto nevie všetko. Ako teda váš prehliadač zistí adresu www.example.com? Na to spolupracujú dva druhy serverov:

  • Autoritatívne menné servery (po anglicky authoritative) poznajú odpoveď pre svoju vlastnú časť. Menné servery domény example.com poznajú záznamy pre example.com. Pre iných nič nezisťujú.
  • Resolvery (nazývané aj rekurzívne resolvery) zisťujú odpoveď za vás. Pýtajú sa tak dlho, kým ju nezískajú. Váš internetový poskytovateľ má svoj resolver, a existujú aj verejné resolvery, napríklad od Quad9, Cloudflare alebo Google.

Váš počítač sám takmer nič nezisťuje. Má malý stub resolver, ktorý odovzdá otázku resolveru vašej siete a dostane späť odpoveď.

Cesta krok za krokom

Predstavte si: resolver si zatiaľ nič nepamätá a vy sa pýtate na záznam A pre www.example.com.

  1. Váš počítač sa pýta resolvera: "Aký je záznam A pre www.example.com?"
  2. Resolver sa pýta rootserver. Každý resolver má zabudovaný zoznam adries rootserverov. Rootserver nevie nič o example.com, ale vie, kto spravuje .com. Odpovie odkazom: "Na to sa musíte opýtať menných serverov pre com: a.gtld-servers.net, b.gtld-servers.net, a tak ďalej."
  3. Resolver sa pýta menného servera pre .com. Ten tiež nepozná IP adresu www.example.com, ale vie, ktoré menné servery má example.com. Opäť odkaz: "Spýtajte sa ns1.hosting.example alebo ns2.hosting.example."
  4. Resolver sa pýta menného servera domény example.com. Ten je pre túto doménu autoritatívny a dáva odpoveď: "www.example.com má záznam A 192.0.2.10."
  5. Resolver odovzdá odpoveď vášmu počítaču. Váš prehliadač sa pripojí na 192.0.2.10.

Odkaz z vyššej úrovne na menné servery nižšej úrovne sa nazýva delegácia. Root deleguje .com spoločnosti Verisign, .com deleguje example.com menným serverom, ktoré uviedol držiteľ domény. Pri doméne .nl to prebieha úplne rovnako, len root odkazuje na menné servery .nl (SIDN, napríklad ns1.dns.nl). Sami to uvidíte v úlohe na konci tejto lekcie. Preto je také dôležité, aby menné servery v registri súhlasili so skutočnosťou (lekcia 2.1).

Cache: nie vždy celá cesta odznova

Keby každý resolver pri každej otázke začínal od rootservera, dostal by root neuveriteľné množstvo otázok. To sa nestáva, pretože resolver si odpovede istý čas pamätá. Táto pamäť sa nazýva cache.

Ako dlho sa odpoveď môže pamätať, je uvedené priamo v odpovedi: v hodnote TTL (time to live), v sekundách. TTL 3600 znamená: táto odpoveď sa môže pamätať jednu hodinu. Pamätajú sa aj odkazy (delegácie). Resolver, ktorý práve zistil, aké menné servery má .com, sa to nabudúce nemusí znova pýtať rootservera.

Ak sa niekto iný u toho istého poskytovateľa opýta o minútu neskôr na www.example.com, resolver odpovie okamžite z cache. Žiadna cesta, žiadne čakanie.

Cache sa nachádza na viacerých miestach:

  • v resolveri vášho poskytovateľa alebo vo verejnom resolveri, ktorý používate;
  • vo vašom operačnom systéme (Windows, macOS, váš telefón);
  • vo vašom prehliadači;
  • niekedy vo vašom routeri.

Je to rýchle a efektívne, no má to dôsledok, s ktorým sa neskôr často stretnete: keď zmeníte záznam, cache budú ešte poskytovať starú odpoveď, kým neuplynie ich TTL. Preto niekto zmenu už vidí a iný ešte nie. Modul 6 sa tejto téme venuje podrobne.

Rootservery

Existuje 13 názvov rootserverov: a.root-servers.net až m.root-servers.net. Spravuje ich dvanásť rôznych organizácií. Za každým názvom stojí po celom svete veľa serverov, na stovkách miest, ktoré zdieľajú rovnakú adresu (to sa nazýva anycast). Váš resolver sa automaticky dostane k najbližšiemu z nich. Rovnako fungujú aj TLD menné servery, napríklad pre .com a .nl. Vďaka tomu je DNS rýchly a funguje aj vtedy, keď niekde vypadne server.

Kde môže nastať problém

Keď poznáte priebeh cesty, ľahšie zaradíte problém:

  • Delegácia nesedí. V registri sú uvedené menné servery, ktoré doménu (už) nepoznajú. Resolver sa potom pri kroku 4 nedostane ďalej. Odpoveďou je chyba, alebo žiadna odpoveď.
  • Autoritatívny server dáva inú odpoveď, než ste čakali. Záznam ste zmenili na inom mieste, než kde sú menné servery (lekcia 2.1).
  • Cache má ešte starú odpoveď. Vtedy nie je nič pokazené. Musíte počkať, kým uplynie TTL, alebo vymazať vlastnú cache.
  • DNSSEC nesedí. Validujúci resolver kontroluje po ceste podpisy. Ak reťazec nesedí, odpoveď odmietne (lekcia 8.1).

Pomocou nástroja dig +trace si môžete cestu sami overiť, od rootservera až po autoritatívny server. To sa naučíte v lekcii 8.2. Dokážu to aj online nástroje.

Zhrnutie

  • Autoritatívne menné servery poznajú odpoveď pre svoju vlastnú doménu; resolvery zisťujú odpoveď za vás.
  • Resolver začína pri rootserveri, dostane odkaz na TLD, potom na menné servery domény, a tam dostane odpoveď.
  • Takýto odkaz sa nazýva delegácia.
  • Odpovede sa pamätajú v cache, tak dlho, ako určuje TTL; preto zmeny nie sú všade viditeľné okamžite.
  • Existuje 13 názvov rootserverov, no vďaka anycastu za nimi stojí po celom svete veľa serverov.

Kvíz

1. Ktorý server zisťuje odpoveď za vás tým, že sa pýta iných serverov?



2. Čo odpovie rootserver na otázku o www.example.com?



3. Prečo nemusí resolver pri každej otázke začínať od rootservera?



4. Existuje 13 názvov rootserverov. Znamená to, že na svete je 13 rootserverov?



Úloha

Úloha Z1.4: Sledovanie cesty. Sledujte cestu pre www.sidn.nl pomocou dig +trace www.sidn.nl alebo online nástroja, ktorý zobrazuje trace. Doplňte: (1) jeden menný server nl., na ktorý po ceste narazíte, (2) jeden autoritatívny menný server domény sidn.nl.

Úloha Z1.4: Sledovanie cesty



Čo vyplníte a čo my zistíme naživo, neukladáme. Váš prehliadač si pamätá vaše odpovede a to, či ste úlohu splnili. Ak ste prihlásení, uložíme len to, že ste úlohu mali (takmer) správne v Moje kurzy; aj tam to môžete odstrániť.

Ďalšie čítanie

Tieto články popisujú situáciu u WebOké. U iných poskytovateľov to funguje podobne.

Chvíľu strpenia…

Nastavte svoje domény

Pri každej doméne nastavte nameservery, prepojenie s hostingom a to, kto bude jej vlastníkom.

Načítavajú sa vaše domény…