Protokol DNS: Rozdiel medzi revíziami
Riadok 20: | Riadok 20: | ||
Najvyššiu úroveň stromu domén - domény najvyššej úrovne ('''top-level domains''', '''TLD''') spravujú koreňové DNS servery. Tie obsahujú údaje o DNS serveroch pre domény najvyššej úrovne (".com", ".net", ".sk" atď.). Koreňové DNS servery sú veľmi dôležité, pretože sú nevyhnutné pre správnu činnosť celého Internetu. Preto existuje niekoľko koreňových DNS serverov, ktoré sú rozmiestnené na viacerých kontinentoch. ( v súčastnosti ich je 13) . Adresy týchto serverov sú verejne známe a nachádzajú sa v konfigurácii každého DNS servera. | Najvyššiu úroveň stromu domén - domény najvyššej úrovne ('''top-level domains''', '''TLD''') spravujú koreňové DNS servery. Tie obsahujú údaje o DNS serveroch pre domény najvyššej úrovne (".com", ".net", ".sk" atď.). Koreňové DNS servery sú veľmi dôležité, pretože sú nevyhnutné pre správnu činnosť celého Internetu. Preto existuje niekoľko koreňových DNS serverov, ktoré sú rozmiestnené na viacerých kontinentoch. ( v súčastnosti ich je 13) . Adresy týchto serverov sú verejne známe a nachádzajú sa v konfigurácii každého DNS servera. | ||
− | ==DNS | + | ==Základné rozdelenenie DNS serverov : == |
'''Primárny DNS''' server je server, ktorý obsahuje a obsluhuje údaje o doméne a je pre danú doménu autoritatívny. Odpovede primárneho DNS servera sú považované za vždy aktuálne a platné. Odkazy na DNS servery domény sú uložené v nadradenom DNS serveri. Ukazovatele na DNS servery druhej úrovne ("mojadomena.sk") sú uložené v DNS pre doménu najvyššej úrovne (".sk"). | '''Primárny DNS''' server je server, ktorý obsahuje a obsluhuje údaje o doméne a je pre danú doménu autoritatívny. Odpovede primárneho DNS servera sú považované za vždy aktuálne a platné. Odkazy na DNS servery domény sú uložené v nadradenom DNS serveri. Ukazovatele na DNS servery druhej úrovne ("mojadomena.sk") sú uložené v DNS pre doménu najvyššej úrovne (".sk"). |
Verzia zo dňa a času 22:01, 22. marec 2010
Návrat na stránku Algoritmy a programovanie.
Obsah
DNS
Služba doménových mien (resp. Domain Name Service) tvorí dnes neodmysliteľnú súčasť Internetu. Pre fungovanie Internetu je DNS kľúčovou záležitosťou, ktorú zabezpečujú programy na obsluhu DNS - DNS servery.
Každý počítač má na internete svoju vlastnú adresu, tzv. IP, v číselnom formáte. Je obtiažne pamätať si číselné adresy počítačov, na ktorých si chceme prezerať WWW stránky, a preto existuje služba DNS, ktorá "prekladá" číselne IP adresy zo zle zapamätateľného číslicového tvaru na mená, ktoré sa užívateľom pamätajú podstatne lepšie, a naopak. Umožňuje preklad doménového mena na IP adresu (priamy preklad) a opačne (reverzný preklad) - napr. webová prezentácia www.slovaknet.sk je umiestnená na serveri s IP adresou 62.168.63.222. V širšom poňatí je možné DNS chápať ako distribuovanú databázu doménových mien, v užšom ponímaní je možné DNS chápať ako aplikačný protokol, prostredníctvom ktorého si počítače v sieti vymieňajú formalizované informácie o doménových menách.
V DNS sa nenachádza iba adresa servera, kde je prezentácia umiestená, ale záznam obsahuje aj adresy poštového servera, FTP servera, domén 3. úrovne atď. Doménové meno sa skladá z častí (domén, subdomén) oddelených bodkou. Doména môže obsahovať znaky "A-Z", "a-z", "0-9", "-" a "_". (max 255 znakov)
- DNS si môžete predstaviť ako strom domén:
Výhodou stromového riešenia je, že každú časť stromu môže spravovať iný server.Správa systému domén je teda distribuovaná, čo znižuje možnosť výpadku celého systému v prípade výpadku niektorého uzla.
Najvyššiu úroveň stromu domén - domény najvyššej úrovne (top-level domains, TLD) spravujú koreňové DNS servery. Tie obsahujú údaje o DNS serveroch pre domény najvyššej úrovne (".com", ".net", ".sk" atď.). Koreňové DNS servery sú veľmi dôležité, pretože sú nevyhnutné pre správnu činnosť celého Internetu. Preto existuje niekoľko koreňových DNS serverov, ktoré sú rozmiestnené na viacerých kontinentoch. ( v súčastnosti ich je 13) . Adresy týchto serverov sú verejne známe a nachádzajú sa v konfigurácii každého DNS servera.
Základné rozdelenenie DNS serverov :
Primárny DNS server je server, ktorý obsahuje a obsluhuje údaje o doméne a je pre danú doménu autoritatívny. Odpovede primárneho DNS servera sú považované za vždy aktuálne a platné. Odkazy na DNS servery domény sú uložené v nadradenom DNS serveri. Ukazovatele na DNS servery druhej úrovne ("mojadomena.sk") sú uložené v DNS pre doménu najvyššej úrovne (".sk").
Sekundárny DNS server je server, ktorý pomocou pravidelného kopírovania údajov o doménach z primárneho DNS servera vytvára záložný DNS server pre danú doménu. Úlohou primárneho DNS servera je tiež upozorniť svoje sekundárne DNS servery pri zmene záznamov v DNS. Jeden primárny DNS server môže používať niekoľko sekundárnych DNS serverov, vždy však najmenej jeden.
Ako pracuje DNS
Protokol DNS pracuje jednoduchým spôsobom: dotaz - odpoveď. To znamená, že klient pošle serveru dotaz a server na dotaz odpovie. Služba sa pri svojom fungovaní opiera o služby transportných protokolov. DNS používa ako TCP, tak protokol UDP, pričom dotaz aj odpoveď sú prenášané vždy rovnakým transportným protokolom. Pri dotaze na preklad mena na adresu sa používa protokol UDP Ak DNS server spravuje doménu, môže vytvárať domény nižšej úrovne (subdomény) a buď obsahuje údaje o týchto doménach, alebo odkaz na podriadené DNS servery, ktoré ich spravujú.
Protokol TCP (Transmission Control Protocol)
Poskytuje spoľahlivé zasielanie dát po sieti. Kontaktuje prijímateľa pred vyslaním dát. Vďaka TCP môžu programy na počítačoch v sieti vytvárať medzi sebou spojenia (connections), ktorými je možné posielať dáta. Protokol pritom zaručuje, že dáta odoslané z jedného konca spojenia budú prijaté na druhej strane spojenia v rovnakom poradí a bez chýbajúcich častí.
Protokol UDP (User Datagram Protocol)
Zasiela dáta iným spôsobom ako TCP. Nezisťuje, či boli odoslané dáta prijaté adresátom, preto je nespoľahlivý. connection less protokol (nekontaktuje prijímateľa pred vyslaním dát). UDP protokol prenáša datagramy medzi počítačmi v sieti, ale na rozdiel od TCP nezaručuje, že prenášaný paket sa nestratí, že sa nezmení poradie paketov, ani že sa niektorý paket nedoručí viackrát. Vďaka tomu je UDP pre ľahké a časovo citlivé účely rýchlejší a efektívnejší. Jeho bezstavová povaha je tiež užitočná pre servery, ktoré odpovedajú na malé požiadavky mnohých klientov. UDP sa používa napríklad pre DNS, streamované médiá, prenos hlasu alebo videa (VoIP) a online hry.
Zloženie správy
DNS paket pozostáva z piatich sekcií:
- 1.HEADER - Záhlavie paketu : Obsahuje identifikátor správy, ktorý generuje klient a server ju skopíruje do odpovede.
- 2.QUESTION - Sekcia dotaz : Sekcia dotaz je obsiahnutá ako v pakete dotazu, tak aj v pakete odpovede na dotaz. Obsahuje pole doménové meno, typ dotazu a triedu dotazu
- 3.ANSWER - Sekcia odpoveď: Sekcia odpoveď - obsahuje odpoveď na dotaz. Túto sekciu obsahuje len paket s odpoveďou.
- 4.AUTHORITY - Autoritatívne name servery: Sekcia autoritatívne name servery obsahuje mená name serverov uvedených v zdrojových vetách typu NS. Túto sekciu obsahuje len paket s odpoveďou.
- 5.ADDITIONAL - Doplnkové informácie: Sekcia doplnkové informácie obsahuje obvykle IP adresy autoritatívnych name serverov. Túto sekciu obsahuje len paket s odpoveďou.
Typy DNS záznamov
- Najčastejšie používané sú nasledujúce typy zdrojových záznamov:
- A - záznam alebo záznam adresy mapuje hostname na 32-bitovú IPv4 adresu.
- AAAA - záznam alebo záznam IPv6 adresy mapuje hostname na 128-bitovú IPv6 adresu.
- CNAME - záznam alebo záznam kanonické meno spôsobuje, že jeden názov domény je aliasom pre iný. Takáto doména má platné všetky subdomény a DNS záznamy originálu.
- MX - záznam alebo mail exchange záznam mapuje meno domény na zoznam mail exchange serverov pre danú doménu.
- NS - záznam alebo name server záznam mapuje názov domény na zoznam DNS serverov pre danú doménu. Delegácie závisia na NS zázname.
- SOA - záznam (start of authority record) alebo začiatok záznamu autority špecifikuje DNS server poskytujúci autoritatívnu informáciu o internetovej doméne.
Zónový súbor
Informácie o doménach a adresách sú uložené v tzv. zónových súboroch. Jeden zónový súbor by mal obsahovať údaje o jednej doméne, adresách v rámci tejto domény.O funknčnosť služby doménových mien na strane klienta sa stará resolver. Resolver je sada funkcií (gethostbyname(3), gethostbyaddr(3), atd.), ktoré využívajú pri resolvovaní samotné užívateľské aplikácie. Fungovanie resolvera je možné nastaviť v súboroch /etc/host.conf, /etc/resolv.conf, /etc/hosts
- Príklady zónového súboru:
Médiá:príklad zónového súboru.jpg
V príklade je uvedená implicitná životnosť jeden týždeň, ďalej SOA záznam popísaný vyžšie, určujúci, že se záznam týka domény kdesi.cz, ktorého správcu je možné kontaktovať na emailu franta@kdesi.cz. Následujúce odkazy na dva DNS servery, ktoré o doméne poskytujú autoritativne informácie – jeden miestni a druhý externý. Ďalej MX záznamy, určujúce kam sa bude doručovat elektronická pošta pre túto doménu. Dalšie dva riadky obsahujú A a AAAA záznamy určujúce adresy počítača cosi.kdesi.cz. Za nimi je definována IPv4 adresa pre server.kdesi.cz a konečne je mu přidelána prezývka www.kdesi.cz.
- Uživatel zadal www.wikipedia.org , resolver v počítači sa obrátil na lokálny DNS server s dotazom na IP adresu pre www.wikipedia.org.
- Lokálny DNS server túto informáciu nepozná. Má však k dispozícií adresy koreňových serverov. Na jeden z nich se obráti ( povedzme na 193.0.14.129) a dotaz mu prepošle.
- Koreňový server tiež nepozná odpoveď. Vie však, že existuje doména najvyššiej úrovňe .org, a aké sú jej autoritatívne servery, ktorej adresy žiadateli poskytne.
- Lokálny server jeden z nich vyberie (povedzme, že zvolí tld1.ultradns.net s IP adresou 204.74.112.1) a pošle mu dotaz na IP adresu k menu www.wikipedia.org.
- Oslovený server informáciu opeť nepozná, ale poskytne IP adresy autoritatívnych serverov pre doménu wikipedia.org. sú to ns0.wikimedia.org (207.142.131.207), ns1.wikimedia.org (211.115.107.190) a ns2.wikimedia.org (145.97.39.158).
- Lokálny server opeť jeden z nich vyberie a pošle mu dotaz na IP adresu ke menu www.wikipedia.org.
- Kedže toto meno sa už nachádza v doméne wikipedia.org, dostane od jeho servera nesporne autoritatívnu odpoveď, že hladaná IP adresa znie 145.97.39.155
- Lokálny DNS server túto odpoveď predá uživateľskému počítaču, ktorý sa naň pýtal.