Základy počítačových sítí
10. Protokoly aplikační vrstvy
10.7. Protokol DNS
DNS je protokol, služba, která překládá lidsky čitelné názvy domén na IP adresy zařízení na internetu. Představte si situaci, kdy DNS neexistuje, ale my chceme v prohlížeči zobrazit své oblíbené webové stránky. Místo názvu domény musíme zadat IP adresu, tj. například adresu ve slovním tvaru: 212.56.93.112. Pro většinu z nás to není problém, některá čísla si lze zapamatovat. Na druhou stranu je na internetu mnoho webových stránek a je obtížné zapamatovat si mnoho číselných adres. Navíc je snadné udělat v takových digitálních záznamech chybu a ve světě internetu může taková malá chyba vést k jiné stránce, než jsme očekávali.
To je jedna strana mince a druhá strana je, že IP adresa serveru se nemusí měnit příliš často. Když naše webové stránky změní IP adresu a služba DNS nefunguje, musíme se adresu znovu naučit a zapamatovat si ji. Systém DNS tento problém řeší, protože tuto adresu změní ve své databázi záznamů a přiřadí ji názvu domény. Pro nás uživatele je pak jedno, jaká je IP adresa webu, důležité je, že známe adresu, název domény a že se nemění.
DNS je služba, která funguje v architektuře klient-server, ale klienty zde nepovažujeme za počítačové programy, jako jsou prohlížeče nebo programy pro sdílení souborů. V tomto počítači je spuštěna pouze systémová služba DNS Resolver, která obsluhuje všechny aplikace v klientských počítačích, jejichž názvy je třeba změnit. Při konfiguraci síťového zařízení nebo jen počítače bychom měli zadat dvě adresy serverů DNS, aby v případě, že jeden z nich nekomunikuje, fungoval druhý jako náhrada názvu.
Servery DNS ukládají nejrůznější záznamy, včetně záznamů A a AAAA obsahujících adresy koncových zařízení a záznamů MX, které se starají o výměnu pošty, protože je důležité si uvědomit, že systém DNS nepřevádí pouze doménové adresy na IP adresy pro webové stránky, ale vztahuje se také na e-mailový server. Výměna jmen pro mě vypadá takto:
1. klient odešle dotaz na server DNS, který zkontroluje, zda záznam existuje v jeho databázi.
2. pokud ano, přeloží název na IP adresu a odešle ji zpět klientovi:
3. pokud ne, kontaktuje jiné servery, aby se daný záznam nacházel v jejich databázi:
Odesílání dotazů na jiné servery ohledně serveru DNS, který záznam ve své databázi nenašel, může vést k velkému síťovému provozu, což je matoucí situace. Aby se zabránilo nadměrnému a zbytečnému síťovému provozu, když jiný server najde záznam a odešle jej serveru přiřazenému našemu zařízení, uloží tento server záznam do mezipaměti, takže v budoucnu nebudete muset pro stejnou adresu odkazovat na jiný server. To jistě urychlí pozdější změny názvů, protože naše servery DNS již nebudou vyhledávat záznamy na jiných serverech, ale názvy okamžitě nahradí. Podobně služby DNS v osobních počítačích ukládají dříve přeložené názvy. To lze ověřit zadáním příkazu ipconfig /displaydns v počítači se systémem Windows. Poté zjistíme, která mapování jsou uložena v mezipaměti služby DNS našeho počítače.