Microsoft DNS: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Slaasik (talk | contribs)
Slaasik (talk | contribs)
m DNS moved to Microsoft DNS
 
(80 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Sissejuhatus ==
== Sissejuhatus ==
'''DNS''' (ingl ''Domain Name System'') ehk Domeeninimede süsteem on teenus, mis tõlgib domeeninimed TCP/IP võrkudes kasutatavateks IP-aadressideks. Tema töö põhimõte seisneb selles, et ta võtab inimesele mugavalt loetava veebiaadressi näiteks "http://www.neti.ee", mis sisaldab endas domeeni nime neti.ee ja ta tõlgib selle ümber arvutitele arusaadavaks IP-aadressiks [195.50.209.244].
'''DNS''' (ingl ''Domain Name System'') ehk Domeeninimede süsteem on teenus, mis tõlgib domeeninimed TCP/IP võrkudes kasutatavateks IP-aadressideks. Süsteemi töö põhimõte seisneb selles, et ta võtab inimesele mugavalt loetava veebiaadressi näiteks "http://www.neti.ee", mis sisaldab endas domeeninime neti.ee ja ta tõlgib selle ümber arvutitele arusaadavaks IP-aadressiks [195.50.209.244].


Domeeninimede süsteem võimaldab mõistlikul viisil määrata interneti kasutajagruppidele domeeni nimesi, mis on sõltumatud iga kasutaja füüsilisest asukohast. Tänu sellele võivad paljud lingid k.a. ka veebis kasutatavad hüperlingid jääda samas üle aastate hoolimata sellest, et teenusepakkuja vahetab kas oma füüsilist asukohta ja selletõttu ka oma IP-aadressi või lihtsalt IP-aadressi. Inimestel on kergem jätta meelde domeeni aadresse mis on nimelised kui neile vastavaid IPv4 või IPv6 aadresse.
== DNSi domeeninimede süsteem ==


DNS on sisuliselt hierarhiliselt korraldatud hajusandmebaas, kus kõige tipus on "root" tsooni serverid. Seda nimetatakse ka ühtlasi kõrgema astme domeeniks (ingl ''top-level domain''), kuhu kuuluvad serverid omavad IP-aadresse serveritele kes on vastutavad kõrgema astme domeeni eest. Seda on kõige parem seletada järgmise näitega.
Domeeninimede süsteem võimaldab mõistlikul viisil määrata interneti kasutajagruppidele domeeninimesid, mis on sõltumatud iga kasutaja füüsilisest asukohast. Tänu sellele võivad paljud lingid, k.a. ka veebis kasutatavad hüperlingid, jääda samaks läbi aastate hoolimata sellest, et teenusepakkuja vahetab kas oma füüsilist asukohta ja selletõttu ka oma IP-aadressi või ainult IP-aadressi. Inimestel on kergem jätta meelde domeeniaadresse, mis on nimelised (mnemoonilised) kui neile vastavaid IPv4 või IPv6 aadressid numberkujul.


Meil on domeen näiteks domeen microsoft.com selle root tsooniks peetakse "." osa domeeniks. Kõrgema astme domeeniks nimetatkse aga "''.com''" osa. Teise astme domeeniks on aga "''microsoft''". Iga nimi kõrgema astme domeenis "''com''" peab olema unikaalne. Samas aga üle domeenide võib olla ka duplikatsiooni näiteks: kalle.com ja kalle.org, mis on tegelikult täiesti erinevad masinad. Kõige vasakpoolsem osa domeeninimest on "hosti" nimi. Näiteks computerA.contoso.microsoft.com viitab arvutile A "''contoso''" domeenis, mis asub teise astme domeenis "''microsoft'', mis omakorda asub "''.com''" kõrgema astme domeenis.[[Image:Dns namespace.png|thumb|upright=2]]
DNS on sisuliselt hierarhiliselt korraldatud hajusandmebaas, kus kõige tipus on juurtsooni (ingl. k. ''root zone'') serverid. Seda nimetatakse ka ühtlasi tipptaseme domeeniks (ingl. k. ''top-level domain''), kuhu kuuluvad serverid omavad IP-aadresse serveritele, kes on vastutavad kõrgema astme domeeni eest. Seda on kõige parem seletada järgmise näitega.


Teise astme domeenid on registreeritud üksikisikud või organisatsioonid nagu näiteks Microsofti Korporatsioon või eesti.ee domeen, mis on Eesti riigiportaal. Teise astme domeenidel võib olla väga palju alamdomeene ja iga domeen võib sisaldada endas mitmeid "hoste" nagu näiteks: ''printer1'', ''arvuti2'', ''dc2'' jne.
Meil on domeen näiteks domeen microsoft.com selle juurtsooniks peetakse "." osa domeeniks. Tipptaseme domeeniks nimetatakse aga aadressi "''.com''" osa. Teise taseme domeeniks on aga "''microsoft''". Iga nimi tipptaseme domeenis "''com''" peab olema unikaalne. Samas aga üle domeenide võib esineda ka duplikatsiooni, näiteks: ''kalle.com'' ja ''kalle.org'', mis on tegelikult täiesti erinevad ''hostid''. Kõige vasakpoolsem osa domeeninimest on ''hosti'' nimi. Näiteks computerA.contoso.microsoft.com viitab arvutile A "''contoso''" domeenis, mis asub teise astme domeenis "''microsoft''", mis omakorda asub "''.com''" kõrgema astme domeenis.[[Image:Dns namespace.png|thumb|upright=2]]
Üks suur eelis hierarhilisel struktuuril on see, et meil on võimalik hoida 2 sama hosti nimega masinat kahes erinevas kohas struktuuris. Näiteks: ''arvuti1.ari.lapland.fi'' ja ''arvuti1.it3.lapland.fi''.


DNS serverite tüübid on määratud mis tüüpi tsooni või tsoone nad hostivad ja mis funktsioone nad täidavad. Dns server võib hostida kas primaarset või sekundaarset tsooni või mõlemat. Kui DNS server ei hosti ühtegi tsooni siis nimetatakse seda serverit ''caching-only server''iks. Serverit nimetatase autoriteetseks mingi tsooni puhul kui ta hostib kas primaarset või sekundaarset DNS domeeni tsooni. Windows Server 2003 ja 2008 toetavad järgmisi DNS serveri tüüpe.
Teise taseme domeenid on registreeritud üksikisikute või organisatsioonide nimele, nagu näiteks Microsofti Korporatsioon või eesti.ee domeen, mis on Eesti Vabariigi riigiportaal. Teise taseme domeenidel võib olla väga palju alamdomeene ja iga domeen võib sisaldada endas mitmeid ''hoste'' nagu näiteks ''printer1'', ''arvuti2'', ''dc2'' jne.
* Primaarne DNS server - Primaarsed nimeserverid on konfigureeritud hostima ühte või mitut primaarset DNS tsooni. Standard või faili-paketeeritud tsoonide puhul, kui tehakse muudatus tsooni andmetesse, näiteks lisatakse ressursi andmeid tsoonile, siis tuleb teha see muudatus selle tsooni primaarsesse serverisse. Vastavad muudatused kanduvad ka edasi sekundaarsetesse serveritesse. AD-integreeritud tsoonide puhul aga pole mingit erinevust primaarsete ja sekundaarsete serverite puhul.
Üks hierarhilise struktuuri suur eelis on see, et on võimalik hoida kahte sama hostinimega masinat kahes erinevas struktuurikohas. Näiteks: ''arvuti1.ari.lapland.fi'' ja ''arvuti1.it3.lapland.fi''.
* Sekundaarne DNS server - Sekundaarne nimeserver hostib ühe või mitme sekundaarse tsooni andmebaasi. Kuna sekundaarse tsooni loomiseks kasutatakse tsooni ülekannet (ingl ''zone transfer''), siis peab vastavalt primaarne server ja tsoon juba olemas olema.
 
* ''Caching-only server'' - ''Caching-only server''id ei hosti ühtegi tsooni ja ei ole autoratiivsed mingi domeeni jaoks. ''Caching-only'' DNS serverid alustavad tühja vahemäluga ja täidab seda ressursi andmete (ingl ''Ressource Records'') sissekannetega vastates klientide päringutele. Vastav informatsioon on siis juba olemas järgnevatele klientide päringutele. ''Caching-only server'' on vajalik kohtades kus on lokaalselt vaja DNSi funktsionaalsust, kuid eraldi domeeni või tsooni pole vaja luua.
DNS serverite tüübid on määratud sellega, mis tüüpi tsooni või tsoone nad hostivad ja mis funktsioone nad täidavad. DNS server võib hostida kas primaarset või sekundaarset tsooni või mõlemat. Kui DNS server ei hosti ühtegi tsooni, siis nimetatakse seda serverit ''caching-only server''iks. Serverit nimetatase autoriteetseks mingi tsooni puhul, kui ta hostib kas primaarset või sekundaarset DNS domeeni tsooni. Windows Server 2003 ja 2008 toetavad järgmisi DNS serveri tüüpe:
* Primaarne DNS server - primaarsed nimeserverid on konfigureeritud hostima ühte või mitut primaarset DNS tsooni. Standard- või faili-paketeeritud tsoonide puhul, kui tehakse muudatus tsooniandmetes, näiteks lisatakse ressursi andmeid tsoonile, tuleb teha see muudatus selle tsooni primaarserveris. Vastavad muudatused kanduvad edasi sekundaarsetesse nimeserveritesse. AD-integreeritud tsoonide puhul aga pole mingit erinevust primaarsete ja sekundaarsete serverite puhul.
* Sekundaarne DNS server - sekundaarne nimeserver hostib ühe või mitme sekundaarse tsooni andmebaasi. Kuna sekundaarse tsooni loomiseks kasutatakse tsooniülekannet (ingl. k. ''zone transfer''), siis peab primaarserver ja vastav tsoon juba olemas olema.
* ''Caching-only server''id ei hosti ühtegi tsooni ja ei ole autoritatiivsed mingi domeeni jaoks. ''Caching-only'' DNS serverid alustavad tühja vahemäluga ja täidavad seda ressursikirjete (ingl. k. ''Resource Records'') sissekannetega, vastates klientide päringutele. Vastav informatsioon on siis juba vahemälus olemas järgmistele klientide päringutele. ''Caching-only server'' on vajalik kohtades, kus vajatakse lokaalset DNS-funktsionaalsust, kuid eraldi domeeni või tsooni pole vaja luua.


== DNS tsoonid ==  
== DNS tsoonid ==  
Tsoonid on oluline osa DNSi hierarhilisest struktuurist. Tsoonid aitavad jaotada nimede lahdemise töökoormust mitmete ressursside vahel. Tsoon on kollektsioon "hosti" nimedest ja neile vastavatest IP aadressitest. DNSi tsoon võib endas hoida ühe või mitme domeeni ressursi andmeid (ingl ''Ressource Records''). Üks tsoon võib hoida endas rohkem kui ühte domeeni ainult juhul kui domeenid on järjestikkused ehk siis on ühendatud otsese "parent-child" suhtega. Kui domeeni nimi jaotada ära tsoonideks, siis on võimalik selle abil delegeerida domeeni nime eri osade vastutust.
Tsoonid on DNSi hierarhilise struktuuri oluline osa, need aitavad jaotada nimelahendamise töökoormust. Tsoon on kogum ''hosti''nimesid ja neile vastavaid IP-aadresse. Üks tsoon võib sisaldada ühe või mitme domeeni ressursikirjeid (ingl. k. ''Resource Records''). Üks tsoon võib hoida endas rohkem kui ühte domeeni ainult juhul, kui domeenid on järjestikused ehk siis on ühendatud otsese "parent-child" suhtega. Kui domeeninimi jaotada ära tsoonideks, siis on võimalik selle abil delegeerida domeeninime eri osadele vastavat vastutust.


Lühidalt hoitakse DNS serverites tsoonide infot kahel viisil:
DNS serverites hoitakse tsooniinfot kahel viisil:
* Tekstipõhises tsooni failis mis sisaldab nimekirja kaardistustest (ingl ''mappings''), mida kutsutakse standard tsooniks (ingl ''standard zone'') või faili-paketeeritud tsooniks (ingl ''file-backed zone'')
* Tekstipõhises tsoonifailis, mis sisaldab nimekirja kaardistustest (ingl. k. ''mappings''), mida kutsutakse standardtsooniks (ingl. k. ''standard zone'') või faili-paketeeritud tsooniks (ingl. k. ''file-backed zone'')
* ''Active Directory'' andmebaasis, mida nimetatakse ''Active Directory'' integreeritud tsooniks (ingl ''Active Directory-integrated zone'')
* ''Active Directory'' andmebaasis, mida nimetatakse ''Active Directory''-integreeritud e. AD-tsooniks (ingl. k. ''Active Directory-integrated zone'')


Iga tsoon (kas standard või AD integreeritud) võib vastavalt päringu tüüpidele millele ta vastata saab olla kas, ''forward lookup zone'' või ''reverse lookup zone''. Iga selline tsoon võib omakorda olla veel 3 erinevat tüüpi:
Iga tsoon võib olla kas ''forward lookup zone'' või ''reverse lookup zone'' ja omakorda veel 3 erinevat tüüpi:
* Primaarne tsoon (ingl Primary zone)
* Primaartsoon (ingl. k. ''Primary zone'')
* Sekundaarne tsoon (ingl Secondary zone)
* Sekundaartsoon (ingl. k. ''Secondary zone'')
* in-addr.arpa tsoon
* in-addr.arpa tsoon
* Stub tsoon (ingl Stub zone) - Toetatud ainult Windows Server 2003 ja 2008 poolt.
* Stub tsoon (ingl. k. ''Stub zone'') - toetatud ainult Windows Server 2003 ja 2008 poolt.


Selle järgi on näha, et DNS server võib olla väga erinevate tsooni tüüpidega, näiteks nagu:
Seega võib DNS server olla väga erinevate tsoonitüüpidega, nt. ''Standard primary forward lookup zone''.
Standard primary forward lookup zone


Konfigureerides DNS servereid, on võimalik konfigureerida üks server hostimaks mitut tsooni kui vaja ja on ka võimalik segada kokku erinevaid tsoonide tüüpe. Näiteks üks DNS server võib hostida sama aegselt primaarset tsooni ''kalle.com'' 'le ja sekundaarset tsooni ''malle.com'' 'le. See võib osutuda suureks abiks kui on tegu ühe ettevõtte eri divisjonide või osakondade projektidega mis vajavad ligipääsu võrguressurssidele üle mitme organisatsiooni.
DNS servereid on võimalik konfigureerida nii, et üks server hostib mitut tsooni ja on ka võimalik segada kokku erinevaid tsoonitüüpe. Näiteks üks DNS server võib hostida samaaegselt ''kalle.com'' primaartsooni ja ''malle.com''i sekundaartsooni. See on abiks, kui on tegu ühe ettevõtte eri divisjonide või osakondade projektidega, mis vajavad ligipääsu võrguressurssidele üle mitme organisatsiooni.


NB! Järgnev näide on Windows Server 2008 baasil. Erinevatel OSidel võib see erineda.
NB! Järgnev näide põhineb Windows Server 2008-l. Erinevatel operatsioonisüsteemide puhul võib see erinev olla.


* Standard primaarne tsoon - Standard primaarne tsoon hostib kirjutamis/lugemis õigustega koopiat DNS tsooni kohta kus ''resource record''eid manageeritakse ja luuakse. Ainult 1 server võib hostida ''master'' koopiat tsoonist. Ükski teine primaarne server ei ole lubatud antud tsooni ''master'' koopiat hostida ja ainult server mis hostib primaarset tsooni tohib aksepteerida dünaamilisi uuendusi ja töödelda tsooni muutusi. DNS serverite ülesseadmisel domeenile asuv primaarne server enamasti ksukil kus tema tsooni failile on administratiivne ligipääs.
* Standardne primaartsoon. See hostib DNS tsooni kirjutamis-/lugemisõigustega koopiat, kus luuakse ja manageeritakse ressursikirjeid (ingl. k. ''resource records''). Tsooni ''master''-koopiat võib hostida ainult 1 server. Ühelgi teisel primaarserveril ei ole lubatud antud tsooni ''master''-koopiat hostida ja ainult server, mis hostib primaartsooni, tohib aktsepteerida dünaamilisi uuendusi ja töödelda tsoonimuudatusi. DNS serverite ülesseadmisel asub domeeni primaarserver enamasti kuskil, kus tema tsoonifailile on administratiivne ligipääs.
* Standard sekundaarne tsoon - Tsooni faili koopiat võib hoida ühel või rohkemal serveril, et balansseerida võrgukoormust, tagada kõrgemat käideldavust või sundida päringuid üle aeglaste WAN (ingl ''Wide Area Network'') linkide. Sekundaarne tsoon on sisuliselt ainult lugemisõigustega koopia standardsest pirmaarsest tsoonist. Standartsetes tsoonides saadetakse, informatsioon primaarsetest tsoonidest sekundaarsetesse tsoonidesse tsooni ülekande (ingl ''zone transfer'') abil. Tsooni ülekanne on sisuliselt tsooni faili kopeerimine primaarsest serverist sekundaarsesse. Tsooni ülekanne võib olla täis tsooni ülekanne (ingl ''full zone transfer'') (ehk AXFR), kus kopeeritakse kogu tsooni fail primaarsest serverist sekundaarsesse serverisse või lisanduv tsooni ülekanne (ingl ''incremental zone transfer'') (ehk IXFR), kus kopeeritakse ainult muudetud informatsioon pärast algelist AXFRi. Seda kasutatakse enamasti liikluse vähendamiseks primaarsete ja sekundaarsete serverite vahel.
* Standardne sekundaartsoon. Standardse sekundaartsooni faili koopiat võib hoida ühel või rohkemal serveril, et balansseerida võrgukoormust, tagada kõrgemat käideldavust või sundida päringuid üle aeglaste WAN (ingl. k. ''Wide Area Network'') linkide. Sekundaartsoon on sisuliselt ainult lugemisõigustega koopia standardsest primaartsoonist. Standardsetes tsoonides saadetakse informatsioon primaartsoonidest sekundaartsoonidesse tsooniülekande (ingl. k. ''zone transfer'') abil. Tsooniülekanne on sisuliselt tsoonifaili kopeerimine primaarserverist sekundaarsesse. Tsooniülekanne võib olla täis tsooniülekanne (ingl. k. ''full zone transfer'' (ehk AXFR)), kus kopeeritakse kogu tsoonifail primaarserverist sekundaarserverisse või kuhjuv tsooniülekanne (ingl. k. ''incremental zone transfer'' (ehk IXFR)), kus kopeeritakse pärast algelist AXFRi ainult informatsioonimuudatused. Seda kasutatakse enamasti liikluse vähendamiseks primaar- ja sekundaarserverite vahel.
* ''Reverse lookup zone'' - Enamik päringuid mis DNS serveri poole saadetakse on ''forward query'' 'd. Nad pärivad IP aadressi DNSi nime põhjal. DNS pakub ka tagurpidi otsimise võimalust (ingl ''reverse lookup''). See tähendab, et host saab teha kindlaks teise hosti nime IP aadressi põhjal. Näiteks on päring vastav: "Mis on DNS domeeni nimi milles asub host IP aadressiga 192.168.100.1?" Selleks, et vastata sellele päringule, konsulteeritakse ''in-addr.arpa'' domeeniga selle IP aadressi asjus. Kui lugeda IP aadressi vasakult paremale, siis vasakule jääb mingi osa bitte mis representeerivad võrgu osa aadressist ja ülejäänud paremale jäävad bitid on hosti osa, vastavalt ''subnet mask''ile. Näiteks 192.168.100.2 subnetmaskiga 255.255.255.0 tähendab, et võrgu osa on 192.168.100 ja hosti osa on 2. Kuna kõrgema taseme osa aadressist jääb paremale, siis tuleb see keerata tagurpidi, et ehitada domeeni puud. Kuna FQDNid (ingl ''Fully Qualified Domain Name'') lähevad täpsemast üldisemaks ja IP aadressid lähevad üldisemast täpsemaks siis selleks, et teha tagurpidi päringut tuleb eelnevalt IP aadress pöörata ümber kui teda on vaja liita in-addr.arpa domeeniga. Näiteks, tagurpidi päringu tsooniks subnetile 192.168.100.0 on 100.168.192.in-addr.arpa. ''In-addr.arpa'' domeeni puu kasutab IP aadressi hosti nimega seostamiseks PTRi (ingl ''Pointer Resource Record''). Vastav ''lookup'' peaks andma aadressi (A) ressursi andmed hostile ''forward lookup'' tsoonis. ''Reverse lookup'' päringuid kasutatakse enamasti võrgu aplikatsioonide poolt verifitseerimiseks kui identifitseerimiseks või siis monitoorimiseks ja vigade otsimiseks DNSi teenusest. ''in-addr.arpa'' domeeni kasutatakse ainult ''IPv4'' baseeruvates võrkudes. ''IPv6'' baseetuvatel ''reverse lookup'' tsoonides kasutatakse ''ip6.arpa'' domeeni, mis pakub sama funktsionaalsust nagu ''in-addr.arpa'' domeen ''IPv4'' võrkudes.
* ''Reverse lookup zone''. Enamik päringuid, mis DNS serveri poole saadetakse, on ''forward query'''d. Nad pärivad IP aadressi DNSi nime põhjal. DNS pakub ka tagurpidi otsimise võimalust (ingl ''reverse lookup''). See tähendab, et host saab teha kindlaks teise hosti nime IP aadressi põhjal. Näiteks on päring vastav: "Mis on DNS domeeni nimi milles asub host IP aadressiga 192.168.100.1?" Selleks, et vastata sellele päringule, konsulteeritakse ''in-addr.arpa'' domeeniga selle IP aadressi asjus. Kui lugeda IP aadressi vasakult paremale, siis vasakule jääb mingi osa bitte mis representeerivad võrgu osa aadressist ja ülejäänud paremale jäävad bitid on hosti osa, vastavalt alamvõrgumaskile (ingl. k. ''subnet mask''). Näiteks 192.168.100.2 alamvõrgumaskiga 255.255.255.0 tähendab, et võrgu osa on 192.168.100 ja hosti osa on 2. Kuna kõrgema taseme osa aadressist jääb paremale, siis tuleb see keerata tagurpidi, et domeenipuud ehitada. Kuna FQDNid (ingl. k. ''Fully Qualified Domain Name'') lähevad täpsemast üldisemaks ja IP aadressid lähevad üldisemast täpsemaks, siis selleks, et teha tagurpidipäringut, tuleb eelnevalt IP aadress pöörata ümber, kui teda on vaja liita in-addr.arpa domeeniga. Näiteks, tagurpidi päringu tsooniks subnetile 192.168.100.0 on 100.168.192.in-addr.arpa. ''In-addr.arpa'' domeeni puu kasutab IP aadressi hosti nimega seostamiseks PTRi (ingl ''Pointer Resource Record''). Vastav ''lookup'' peaks andma aadressi (A) ressursi andmed hostile ''forward lookup'' tsoonis. ''Reverse lookup'' päringuid kasutatakse enamasti võrgu aplikatsioonide poolt verifitseerimiseks kui identifitseerimiseks või siis monitoorimiseks ja vigade otsimiseks DNSi teenusest. ''In-addr.arpa'' domeeni kasutatakse ainult ''IPv4''-l baseeruvates võrkudes. ''IPv6''-l baseeruvates ''reverse lookup'' tsoonides kasutatakse ''ip6.arpa'' domeeni, mis pakub sama funktsionaalsust nagu ''in-addr.arpa'' domeen ''IPv4'' võrkudes.
* ''Stub'' tsoon - DNS server, mis käib Windows Server 2003 või 2008 baasil toetab ka uut tüüpi tsooni nimega ''Stub'' tsoon. ''Stub'' tsoon on koopia tsoonist mis hoiab endas vajalike ressursi andmeid identifitseerimaks autoratiivseid DNS serveid selle tsooni jaoks. ''Stub'' tsoon on ''pointer'' DNS server pihta mis on autoratiivne selle tsooni jaoks ja seda kasutatakse et hoida või parandada DNSi lahendumise efektiivsust. ''Stub'' tsoon hoiab endas alamhulka tsooni andmetest mis sisaldavad endas SOA'd (ingl ''Start of Authority''), NSi (ingl ''Name Server'') ja ''A'' kirjet. Nagu ka standard sekundaarses tsoonis ei saa ka ''Stub'' tsoonis muuta ressursi andmeid. Neid saab muuta vaid primaarses tsoonis. ''Stub'' tsoonid võimaldavad DNS serveril lahendada DNS päringuid kasutades ''Stub'' tsooni nimekirja nimeserveritest ilma saatmata päringut internetti või root serverisse. Kasutades ''Stub'' tsoone on võimalik läbi terve DNSi infrastruktuuri jaotada laiali nimekiri autoratiivsetest DNS serveritest mingi tsooni kohta, koormamata sealjuures sekundaarseid tsoone. Siiski ei paku ''Stub'' tsoonid sama funktsionaalsust kui sekundaarsed tsoonid ja neid ei tohiks võtta arvesse lahendusena aadressite liiasuse vähendamisel ja koormuse jaotamisel.
* ''Stub'' tsoon - Windows Server 2003 või 2008 baasil töötav DNS server toetab ka uut tüüpi ''stub'' tsoone. ''Stub'' tsoon on koopia tsoonist mis hoiab selle tsooni jaoks autoritatiivsete DNS serverite identifitseerimiseks vajalikke ressursiandmeid. ''Stub'' tsoon on ''pointer'' DNS serveri pihta, mis on selle tsooni jaoks autoritatiivne ja seda kasutatakse DNSi lahendumise efektiivsuse hoidmiseks või parandamiseks. ''Stub'' tsoon hoiab endas alamhulka tsooniandmetest, mis sisaldavad endas SOA'd (ingl. k. ''Start of Authority''), nimeserveri (ingl. k. ''Name Server'') ja ''A'' kirjet. Nagu ka standardses sekundaartsoonis, ei saa ka ''stub'' tsoonis muuta ressursiandmeid. Neid saab muuta vaid primaartsoonis.
''Stub'' tsoonid võimaldavad DNS serveril ilma päringut Internetti või juurserverisse saatmata DNS päringuid lahendada, kasutades ''stub'' tsooni nimeserverite nimekirja. ''Stub'' tsoone kasutades on võimalik sekundaarseid tsoone koormamata läbi terve DNSi infrastruktuuri jaotada laiali mingi tsooni jaoks autoritatatiivsete DNS serverite nimekiri. Siiski ei paku ''stub'' tsoonid sama funktsionaalsust kui sekundaarsed tsoonid ja neid ei tohiks kasutada aadresside liiasuse vähendamise ja koormuse jaotamise lahendusena.


== Tsoonide info Active Directorys hoidmise eelis ==
== Tsoonide info Active Directorys hoidmise eelis ==


* Rikete taluvus - Liigset informatsiooni DNSi tsoonide kohta saab hoida mitmetes serverites korraga.
* Rikketaluvus - liiasusega informatsiooni DNS tsoonide kohta saab hoida mitmes serveris korraga.
* Turvalisus - DNS tsoonid mida hoitakse  ''Active Directory''s saavad ära kasutada tugevdatud turvalisust kasutades DACLi (ingl ''Discretionary Access Control List''). DACL võimaldab määrata, mis kasutajad ja mis grupid saavad muuta DNSi tsoone. Samuti on võimalik ka määrata turvalised dünaamilised uuendused (ingl ''Secure Dynamic Updates'') AD-integreeritud tsoonidele, mis lubab muuta andmeid ainult kliendil kes algselt nad registreeris.
* Turvalisus - ''Active Directory'''s hoitavad DNS tsoonid saavad ära kasutada DACLi (ingl ''Discretionary Access Control List'') tugevdatud turvalisust. DACL võimaldab määrata, millised kasutajad ja millised grupid saavad muuta DNS tsoone. Samuti on võimalik ka määrata turvalised dünaamilised uuendused (ingl ''Secure Dynamic Updates'') AD-integreeritud tsoonidele, mis lubab muuta andmeid ainult kliendil kes algselt nad registreeris.
* Tsoonid on ''multimaster''id - Mis see tähendab on see, et tsoone saab updateida rohkem kui ühest kohast näiteks rohkem kui ühest serverist. Kõik domeeni kontrollerid kus tsoone hoitakse saavad vastavaid tsoone muuta ja muudatused kantakse üle ka teistesse domeeni kontrolleritesse kus selle tsooni faili hoitakse.
* Tsoonid on ''multimaster''id - tsoone saab uuendada rohkem kui ühest kohast (serverist). Kõik domeenikontrollerid, kus tsoone hoitakse, saavad vastavaid tsoone muuta ja muudatused kantakse üle ka teistesse domeeni kontrolleritesse, kus selle tsooni faili hoitakse.
* Tõhus replikatsioon - ''Zone transfer''id asendatakse palju tõhusama AD replikatsiooni vastu. See on väga oluline just võrkudele millel on aeglased ühendused, sest AD pakib eelnevalt kokku erinevate saitide vahel ülekantavaid replikatsiooni andmed.
* Tõhus replikatsioon - tsooniülekanded asendatakse palju tõhusama AD replikatsiooni vastu. See on oluline aeglastes võrkudes, sest AD pakib eelnevalt kokku erinevate saitide vahel ülekantavaid replikatsiooniandmed.
* Sekundaarsete tsoonide kasutamise võimaluse hoidmine - Tsoone mida hoitakse ADs on võimalik saata standard sekundaarsetele serveritele ja luu sinna sekundaarseid tsoone sama moodi nagu kantakse üle ''file-backed'' sekundaarseid tsoone.
* Sekundaarsete tsoonide kasutamise võimaluse hoidmine - tsoone, mida hoitakse ADs, on võimalik saata standardsetele sekundaarserveritele ja luua sinna sekundaarseid tsoone samamoodi nagu kantakse üle ''file-backed'' sekundaartsoone.


Windows Server 2003 ja Windows Server 2008 pakuvad effektiivset viisi replikeerimaks DNS tsoonide informatsiooni kui Windows 2000 Server. Windows 2000 Serveri all olevatesse AD tsoonidesse minevad uuendused replikeeriti kõikidesse domeeni kontrolleritesse selles domeenis, ükskõik kas nad olid konfigureeritud DNS serveriteks või mitte.
Windows Server 2003 ja Windows Server 2008 pakuvad Windows 2000 Serverist efektiivsemat viisi DNS tsoonide replikeerimiseks. Windows 2000 Serveris olevate AD tsoonide uuendused replikeeriti kõikidesse selles domeeni domeenikontrolleritesse, ükskõik kas nad olid konfigureeritud DNS serveriteks või mitte.


Windows Server 2003 ja Windows Server 2008, AD-integreeritud tsoone on võimalik konfigureerida 3 erineva replikatsiooni ulatusega, mis tähendab seda, et nendes olevat informatsiooni saab replikeerida 3 erineval viisil.
Windows Server 2003 ja Windows Server 2008, AD-integreeritud tsoone on võimalik konfigureerida 3 erineva replikatsiooni ulatusega, mis tähendab seda, et nendes olevat informatsiooni saab replikeerida 3 erineval viisil.
* Kõikidesse domeeni kontrolleritesse selles domeenis.
* Kõikidesse domeenikontrolleritesse selles domeenis.
* Kõikidesse domeeni kontrolleritesse mis on DNS serverid lokaalses domeenis, samuti tuntud ka kui '''''DomainDNSZones''''' aplikatsiooni partitsioon.
* Kõikidesse domeenikontrolleritesse mis on lokaalse domeeni DNS serverid, samuti tuntud ka kui ''DomainDNSZones'' aplikatsiooni partitsioon.
* Kõikidesse domeeni kontrolleritesse mis on ka DNS serverid terves ''forest''is, samuti tuntud ka kui '''''ForestDNSZones''''' aplikatsioon.
* Kõikidesse domeeni kontrolleritesse, mis on ka DNS serverid terves ''forest''is, samuti tuntud ka kui ''ForestDNSZones'' aplikatsioon.


On võimalik teha 2 tüüpi AD-integreeritud tsoone: ''forward lookup'' tsoon ja ''reverse lookup'' tsoon.
On võimalik teha 2 tüüpi AD-integreeritud tsoone: ''forward lookup'' tsoon ja ''reverse lookup'' tsoon.
* ''Active Directory''-integreeritud ''forward lookup'' tsoon on sarnane standartsele primaarsele tsoonile. Väljaspool ADd on primaarsed ja sekundaarsed serverid vajalikud kuna nad järgivad ühte kindlat ühte pea uuendus mudelit (ingl ''master update model''), kus ainult ühel serveril on kirjutamisõigustega koopia tsooni andmebaasist. Siiski, AD-integreeritud tsoonid järgivad ''multimaster'' uuendus mudelit, mis tähendab, et kõigil AD-integreeritud tsoonidel on olemas kirjutamis- ja lugemisõigustega koopiat tsoonist ja võivad teha tsooni informatsioonis muudatusi. Järelikult, primaarsed ja sekundaarsed tunnusjooned ei ole vajalikud.
* ''Active Directory''-integreeritud ''forward lookup'' tsoon on sarnane standardsele primaartsoonile. Väljaspool ADd on primaar- ja sekundaarserverid vajalikud, kuna nad järgivad ühte kindlat ühte tipmist uuendusmudelit (ingl. k. ''master update model''), kus ainult ühel serveril on tsooni andmebaasi kirjutamisõigustega koopia. Siiski järgivad AD-integreeritud tsoonid ''multimaster'' uuendusmudelit, kus kõigil AD-integreeritud tsoonidel on olemas kirjutamis- ja lugemisõigustega tsoonikoopiad ja kõik võivad teha tsooniinfos muudatusi. Siin ei ole primaarsed ja sekundaarsed tunnusjooned vajalikud.
* ''Active Directory''-integreeritud ''reverse lookup'' tsooni kasutatakse IP aadressist nime saamiseks ja see on sarnane standard in-addr.arpa tsoonile. ''Reverse lookup'' tsooni hoitakse ja uuendataks sama moodi nagu ''Active Directory''-integreeritud ''forward lookup'' tsooni.
* ''Active Directory''-integreeritud ''reverse lookup'' tsooni kasutatakse IP aadressile vastava nime saamiseks ja see sarnaneb standardse in-addr.arpa tsooniga. ''Reverse lookup'' tsooni hoitakse ja uuendatakse sama moodi nagu ''Active Directory''-integreeritud ''forward lookup'' tsooni.


== DNSi delegeerimine ==
== DNSi delegeerimine ==


Algselt hoiab tsoon endas ainult ühe DNSi domeeni nime informatsiooni. Kui aga lisatakse uusi domeene siis tuleb otsustada kas domeen on osa samast tsoonist või mitte. Kui otsustatakse lisada alamdomeen, siis võib hallata seda alamdomeeni osana algsest tsoonist või delegeerida selle haldamine mingile teisele tsoonile.[[Image:Dns zone delegation2.JPG|thumb|upright=1.5]]
Algselt hoiab tsoon endas ainult ühe DNSi domeeninime infot. Uute domeenide lisamisel tuleb otsustada, kas domeen on osa samast tsoonist või mitte. Kui otsustatakse lisada alamdomeen, siis võib seda alamdomeeni hallata osana algsest tsoonist või delegeerida selle haldamine mingile teisele tsoonile.[[Image:Dns zone delegation2.JPG|thumb|upright=1.5]]
Näiteks, antud joonisel on näha ''kalle.ee'' domeen, mis sisaldab endas firma "OÜ Kalle" domeeninimesi. Kui ''kalle.ee'' domeen algselt loodi ühele ainsale serverile, siis konfigureeriti see kui ainus tsoon kogu Kalle DNSi nimevahemikule (ingl ''namespace''). Kui aga ''kalle.ee'' domeen peaks vajama alamdomeene, siis need alamdomeenid peavad olema tsooni kaasa arvatud või delegeeritud eemale mõnda teise tsooni. Konkreetses näites ''kalle.ee'' domeen omab alamdomeeni ''ari.kalle.ee'', mis on delegeeritud eemale ''kalle.ee'' domeenist ja hallatud oma enda tsooni poolt. Siiski, ''kalle.ee'' tsoon peab sisaldama mõnda ''resource record''it, et pakkuda delegeerimis informatsiooni, mis viitaks DNS serveritele, mis on autoriteetsed delegeeritud ''ari.kalle.ee'' alamdomeenile. Kui ''kalle.ee'' tsoon ei kasutada delegeerimist alamdomeenidele, siis alamdomeeni andmed jäävad osaks ''kalle.ee'' tsoonist. Näiteks ''dev.kalle.ee'' alamdomeen ei ole delegeeritud mujale, aga on ''kalle.ee'' tsooni poolt hallatud.
Kõrvaloleval joonisel on näha ''kalle.ee'' domeen, mis sisaldab endas firma "OÜ Kalle" domeeninimesid. Kui ''kalle.ee'' domeen loodi algselt ainsale serverile, siis konfigureeriti see kui ainus tsoon kogu Kalle DNSi nimevahemikule (ingl ''namespace''). Kui aga ''kalle.ee'' domeen peaks vajama alamdomeene, siis need alamdomeenid peavad olema tsooni kaasatud või delegeeritud eemale mõnda teise tsooni. Konkreetses näites ''kalle.ee'' domeen omab alamdomeeni ''ari.kalle.ee'', mis on delegeeritud eemale ''kalle.ee'' domeenist ja hallatud omaenda tsooni poolt. Siiski, ''kalle.ee'' tsoon peab sisaldama mõnda ressursikirjet, et pakkuda delegeerimisinfot, mis viitaks DNS serveritele, mis on autoritatiivsed delegeeritud ''ari.kalle.ee'' alamdomeenile. Kui ''kalle.ee'' tsoon ei kasutada delegeerimist alamdomeenidele, siis alamdomeeni andmed jäävad osaks ''kalle.ee'' tsoonist. Näiteks ''dev.kalle.ee'' alamdomeen ei ole delegeeritud mujale, aga on ''kalle.ee'' tsooni poolt hallatud.


== DNSi tsooni ülekande konfigureerimine ==
== DNSi tsooniülekande konfigureerimine ==


Tsooni ülekanded on täielikud või osalised tsooni andmete ülekanded primaarsest DNS serverist, mis ''host''ib antud tsooni, sekundaarsesse DNS serverisse mis ''host''ib tsooni koopiat. Koopia sekundaarsesse DNS serverisse tehakse algselt tsooni ülekande abil. Kui primaarse DNS serveri tsooni tehakse muudatusi siis primaarne DNS server annab sellest sekundaarsetele DNS serveritele teada ja muudatused kopeeritakse kõikidesse sekundaarsetesse DNS serveritesse selle tsooni kohta tsooni ülekannete abil.
Tsooni ülekanded on täielikud või osalised tsooni andmete ülekanded primaarsest DNS serverist, mis ''host''ib antud tsooni, sekundaarsesse DNS serverisse mis ''host''ib tsooni koopiat. Koopia sekundaarsesse DNS serverisse tehakse algselt tsooni ülekande abil. Kui primaarse DNS serveri tsooni tehakse muudatusi siis primaarne DNS server annab sellest sekundaarsetele DNS serveritele teada ja muudatused kopeeritakse kõikidesse sekundaarsetesse DNS serveritesse selle tsooni kohta tsooni ülekannete abil.


Algselt toetas DNS ainult täielikke tsooni ülekandeid. Alates Windows Server 2000 on lisaks veel võimalik kasutada ka võimalik kasutada lisanduvat tsooni ülekannet.
Algselt toetas DNS ainult täielikke tsooniülekandeid. Alates Windows Server 2000-st on võimalik kasutada ka kuhjuvat tsooniülekannet.


Järgnevad sündmused käivitavad tsooni ülekande:
Järgnevad sündmused käivitavad tsooniülekande:
* Ülekanne algatatakse käsitsi sekundaarse serveri konsoolist.
* Ülekanne algatatakse käsitsi sekundaarse serveri konsoolist.
* Tsooni värskendus intervall aegub.
* Tsooni värskendusintervall aegub.
* Käivitatakse DNS serveri teenus sekundaarse serveri peal.
* Sekundaarsel serveril käivitatakse DNS serveri teenus.
* Peaserver teavitab muudatusest tsoonis.
* Peaserver teavitab muudatusest tsoonis.


Tsooni ülekanded on alati alagatatud sekundaarse serveri pool antud tsoonile ja saadetud konfigureeritud peaserverile, mis on esindajaks tsooni lähtele. Kui peaserver saab päringu antud tsoonile, siis ta võib vastata kas IXFRi või AXFRiga, et kanda tsoon üle sekundaarsesse serverisse.
Tsooniülekanded on alati alagatatud antud tsooni sekundaarserveri poolt ja saadetud konfigureeritud peaserverile, mis on tsooni lähte esindajaks. Kui peaserver saab päringu antud tsoonile, siis ta võib vastata kas IXFRi või AXFRiga, et kanda tsoon üle sekundaarsesse serverisse.


Kogu tsooni ülekanne toimub järgnevalt:
Kogu tsooniülekanne toimub järgnevalt:
# Kui värskendamis väljal olev väärtus sekundaarses serveris oleval SOAl aegub siis pärib sekundaarne server primaarselt serverilt primaarse tsooni kohta SOA andmeid.
# Kui värskendamisväljal olev väärtus sekundaarses serveris oleval SOAl aegub, siis pärib sekundaarne server primaarselt serverilt primaarse tsooni kohta SOA andmeid.
# Primaarne DNS antud tsoonile vastab päringule SOA andmetega.
# Primaarne DNS antud tsoonile vastab päringule SOA andmetega.
# Sekundaarne DNS server võrdleb seeria numbrit saadud SOAs. Kui number on primaarse DNSi poolt saadetud SOAs suurem, tuleb teha tsoonile uuendus. Sekundaarne DNS server saadab selle peale AXFR päringu.
# Sekundaarne DNS server võrdleb seeria numbrit saadud SOAs. Kui number on primaarse DNSi poolt saadetud SOAs suurem, tuleb teha tsoonile uuendus. Sekundaarne DNS server saadab selle peale AXFR päringu.
# Primaarne DNS server võtab tsooni ülekandmise päringu vastu ja saadab kogu tsooni andmebaasi sekundaarsele DNS serverile, sisuliselt kopeerides tsooni, kuid jättes tsooni sätted samaks.
# Primaarne DNS server võtab tsooniülekandmise päringu vastu ja saadab kogu tsooni andmebaasi sekundaarsele DNS serverile, sisuliselt kopeerides tsooni ja jättes tsooni sätted samaks.


Lisanduva tsooni ülekanne toimub järgnevalt:
Kuhjuv tsooniülekanne toimub järgnevalt:
# Algselt, kui sekundaarne server konfigureeritakse, saadab ta oma pea DNS serverile kogu tsooni ülekandmise päringu. Peaserver vastab sellele saates sekundaarsele serverile kogu tsooni koopia.
# Sekundaarserveri algsel konfigureerimisel saadab ta oma DNS peaserverile kogu tsooniülekandmise päringu. Peaserver vastab sellele sekundaarserverile kogu tsooni koopia saatmisega.
# Igal tsooni saadetisel on versioon, mis on seerianumbri kujul. Antud andmed on koos värskendamis intervalliga SOAs. Värskendamis intervall määrab ära mis ajavahemiku jooksul sekundaarne server esitab lähteserverile päringu tsoonist uue koopia saamiseks.
# Igal tsoonisaadetisel on seerianumbri kujul olev versioon. Antud andmed on koos värskendamis intervalliga SOAs. Värskendamisintervall määrab ära, millise ajavahemiku jooksul sekundaarserver esitab lähteserverile päringu tsoonist uue koopia saamiseks.
# Kui intervall aegub, siis saadab server SOA päringu lisanduva tsooni ülekandele.
# Kui intervall möödub, siis saadab server SOA kuhjuva tsooniülekande päringu.
# Lähteserver vastab sellele päringule saates serverile SOA kirje, mis sisaldab eelnevalt mainitud seerianumbrit.
# Lähteserver vastab sellele päringule, saates serverile SOA kirje, mis sisaldab eelnevalt mainitud seerianumbrit.
# Server võrdleb saadud seerianumbrit SOA kirjes oleva seerianumbriga. Kui numbrid on võrdsed siis ülekannet ei pärita ja värskendus intervall algseadistatakse.
# Server võrdleb saadud seerianumbrit SOA kirjes oleva seerianumbriga. Kui numbrid on võrdsed siis ülekannet ei pärita ja värskendus intervall algseadistatakse.
# Kui seerianumbri väärtus SOA vastuses on suurem, siis saadab server IXFR päringu. Päring sisaldab endas ka kohalikku seerianumbrit, et lähteserver teaks mis andmeid server vajab.
# Kui seerianumbri väärtus SOA vastuses on suurem, siis saadab server IXFR päringu. Päring sisaldab endas ka kohalikku seerianumbrit, et lähteserver teaks, mis andmeid server vajab.
# Olenevalt mitest erinevast faktorist, lähteserver kas vastab lisanduva või kogu tsooni ülekandega. Peamist DNS serverit antud tsoonile ei ole vaja, et teha lisanduvat tsooni ülekannet. Ta võib võida ka kogu tsooni ülekandmise kasuks järgnevatel konditsioonidel:
# Olenevalt mitest erinevast faktorist, lähteserver kas vastab kuhjuva või kogutsooniülekandega. Kuhjuva tsooniülekande puhul pole peamist DNS serverit antud tsoonile vaja. Ta võib võida ka kogu tsooni ülekandmise kasuks järgnevatel konditsioonidel:
## Primaarne DNS server ei toeta IXFRi
## Primaarne DNS server ei toeta IXFRi
## Primaarsel DNS serveril ei ole kõiki vajalikke andmeid, et teha IXFRi
## Primaarsel DNS serveril ei ole kõiki vajalikke andmeid, et teha IXFRi
## IXFR kasutab rohkem võrguressurssi kui kogu tsooni ülekandmine.
## IXFR kasutab rohkem võrguressurssi kui kogu tsooni ülekandmine.


Kui sekundaarne DNS server lisanduva tsooni ülekande kätte saab, loob ta uue versiooni tsoonist ja alustab aegunud ''resource record''ite väljavahetamist uutega, alustades vanimast. Kui kõik uuendused on tehtud asendab DNS server vana versiooni tsoonist uuega.
Kui sekundaarne DNS server saab kätte kuhjuva tsooniülekande, loob ta uue versiooni tsoonist ja alustab aegunud ressursikirjete väljavahetamist uutega, alustades vanimast. Kui kõik uuendused on tehtud, asendab DNS server vana tsooniversiooni uuega.


== DNS Resource Records ==
== DNSi ressursikirjed (ingl. k. ''Ressource Records'') ==


DNSi ''resource record'' on informatsioon, mis on seotud DNSi domeeniga. Näiteks ''host''i andmed defineerimaks ''host''i IP aadressi. ''Resource record''id on esitatud DNSi päringutes ja vastustes binaarsel kujul. Tsooni failides aga tavalise tekstina. Windows Server 2008 luuakse ''resource record''id DNSi konsooli või läbi CLI (ingl ''Command-line Interface'') dnscmd abil.
DNSi ressursikirjed on DNSi domeeniga seotud informatsioon. Näiteks ''host''i andmed defineerimaks ''host''i IP aadressi. Ressursikirjed on DNSi päringutes ja vastustes esitatud binaarkujul, tsoonifailides aga tavalise tekstina. Windows Server 2008-s luuakse ressursikirjed DNSi konsoolis või läbi CLI (ingl. k. ''Command-Line Interface'') käsu ''dnscmd'' abil.
{| class="wikitable" style="margin: 1em auto 1em auto background:#efefef;"
{| class="wikitable" border="1"
! Nimi || Kirjeldus  
! Nimi || Kirjeldus
|-
| Omanik || Identifitseerib, kellele antud DNSi domeeni ressursikirje kuulub.
|-
| TTL (ingl. k. ''Time to Live'') || 32-bitine täisarv, mis esitab maksimaalset aega sekundites, mille jooksul DNS server või klient antud ressursikirjet vahemälus hoiab. Selle aja täitumisel antud kirje kustutatakse. See väli ei ole kohustuslik ja kui seda ei ole siin kirjeldatud, siis klient kasutab minimaalset osa TLLi SOA kirjest.
|-
| Klass || Defineerib protokolli "pere", mida kasutatakse. See on IN ehk siis ''Internet system''
|-
| Tüüp || Tuvastab ressursikirje tüübi. Näiteks A indikeerib, et ressursi kirje sisaldab endas ''host''i aadressi.
|-
|''Resource Record Data'' (RDATA) || RDATA väli on muutuva pikkusega ja sisaldab ressursikirjes kirjeldatavat informatsiooni. Näiteks A ressursikirjes on 32 bitine IP aadress, mis on omaniku poolt identifitseeritud ''host''.
|}
 
DNSi andmebaas koosneb ressursikirjetest, mis viitavad erinevale informatsioonile nimedest andmebaasis. DNSi nime ressursikirje võib identifitseerida kindla võrguressursi, näiteks kindlat nime kasutava ''host''i, või teenuse, mis käib antud ''host''i peal, näiteks ''e-mail''.
Erinevat tüüpi ressursikirjed pakuvad arvutite kohta TCP/IP võrgus erinevaid DNSi andmeid. Tüüpilised andmed on välja toodud järgmises näites. Antud näited sisaldavad ka Windows Server 2000,2003 ja 2008 DNSi implementasioonile spetsiifilisi ressursikirjeid.
 
{| class="wikitable" border="1"
|+ '''Ressursi kirjete tüübid'''
|-
! Kirjeldus || Klass || TTL || Tüüp || Andmed
|-
| SOA || Internet (IN) || 60 minutit || SOA || Omaniku nimi, primaarse nimeserveri FQDN, seerianumber, värskendusintervall, korduskatse intervall, aegumisaeg ja miinimum TTL
|-
| ''Host''i (A) kirje || Internet (IN) || SOA TTL sama tsooni kohta || A || Omaniku nimi (''host''i DNS nimi) ja hosti IPv4 aadress
|-
| ''Host''i (AAAA) kirje || Internet (IN) || SOA TTL tsoonis || AAAA || Omaniku nimi (''host''i DNS nimi) ja hosti IPv6 aadress
|-
| Nimeserver || Internet (IN) || SOA TTL sama tsooni kohta || NS || Omaniku nimi ja DNS serveri nimi
|-
| MX kirje (ingl. k. ''Mail Exchanger'') || Internet (IN) || SOA TTL sama tsooni kohta || MX || Omaniku nimi, MX serveri DNSi nimi ja eelistusnumber (ingl. k. ''preference number'')
|-
|-
| Omanik || Identifitseerib kellele antud DNSi domeeni ''resource record'' kuulub.
| CNAME kirje (ingl. k. ''Canonical Name Record'') || Internet (IN) || SOA TTL sama tsooni kohta || CNAME || Omaniku nimi (alias) ja hosti DNSi aadress.
|-
|-
| TTL (ingl ''Time to Live'') || 32-bitine täisarv, mis esitab maksimum aega sekundites, mille jooksul DNS server või klient antud ''resource record''it vahemälus hoiab. Kui see aeg saab täis siis antud kirje lihtsalt visatakse minema. See väli ei ole küll kohustuslik ja kui seda ei ole siin kirjeldatud siis klient kasutab miinimum TLLi SOA kirjest.  
| SRV kirje (ingl. k. ''Service Location Record'') || Internet (IN) || SOA TTL sama tsooni kohta || SRV || Teenuse nimega seotud domeeninimi (LDAP, KDC, etc), protokolli kaal, prioriteetsus, pordinumber.
|}
|}
== SOA (ingl. k. ''Start of Authority'') ressursikirje ==
Iga tsoon sisaldab SOA ressursikirjet iga tsoonifaili alguses. SOA ressursikirje osutab tsoonis hoitava informatsiooni alg- või originaalpunktile. SOA sisaldab kõike antud tsooni haldamiseks DNS serverile vajalikku tsooni-spetsiifilist infot. SOA ressursikirje on esimene ressursikirje, mis uue tsooni loomisel luuakse.
RDATA väli SOA ressursi kirjes sisaldab endas järgmisi välju.
{| class="wikitable" border="1"
|+ '''RDATA väljad SOA ressursi kirjes'''
|-
! RDATA väli || Kirjeldus
|-
| Autoritatiivne server || Sisaldab selle tsooni jaoks autoritatiivse primaarse DNS serveri nime.
|-
| Vastutav isik || Näitab selle tsooni eest vastutava isiku e-maili aadressi. (@) märke asemel kasutatakse (.) märget.
|-
| Seerianumber || Näitab, mitu korda on tsooni uuendatud. Kui tsooni sekundaarserver võtab peaserveriga ühendust, et teha kindlaks vajadus tsooniülekannet alustada, siis võrdleb ta oma seerianumbrit peaserveri omaga. Kui peaserveri seerianumber on suurem, siis sekundaarserver alustab tsooniülekannet.
|-
| Värskendus || Näitab kui tihti tsooni sekundaarserver kontrollib, kas tsooni andmeid on muudetud.
|-
| Korduskatse || Näitab, peale tsooni ülekande päringu saatmist (sekundites) kui kaua sekundaarne server ootab enne päringu uuesti saatmist.
|-
| Aegumine || Näitab sekundites, kui kaua tsooni sekundaarne server pärast tsooniülekannet tsooni päringutele vastab enne, kui enda tsooni kehtetuks tunnistab.
|-
| Miinimum TTL || Kehtib kõigile tsooni ressursikirjetele alati, kui TTLi väärtus ei ole kas spetsifitseeritud või on lühem kui minimaalne TTL SOA kirjes. Ükskõik, millal DNSi klient serverile päringu saadab, saadab server vastu ressursikirjed, mis sisaldavad kirje-spetsiifilist TTLi või minimaalset TTLi. Negatiivsed vastused hoitakse vahemälus miinimum TTLi aja välja toodud autoriteetse tsooni SOA ressursi kirjes.
|}
== Nimeserveri (NS) ressursi kirje ==
Nimeserveri (NS) ressursikirje identifitseerib selle tsooni jaoks autoritatiivse DNS serveri, st. DNS server mis ''host''ib konkreetse DNS tsooni primaar- või sekundaarkoopiat. Antud tsooni jaoks autoritatiivse DNS serveri nime hoitakse RDATA väljal. Nimeserveri kirjeid kasutatakse nii primaarsete kui sekundaarsete DNS serverite SOAs kirjeldatud tsoonis indikeerimiseks ja ka indikeerimaks DNS servereid erinevatele delegeeritud tsoonidele. Kui tsoonil on mitu autoritatiivset serverit (näiteks primaarserver ja üks või rohkem sekundaarserverit), siis peab igaühe kohta leiduma NSi kirje.
<pre style="display: inline-block;">
kalle.ee.    IN      NS      ns.kalle.ee.
</pre>
== Kanoonilise nime (ingl. k. ''Canonical Name'' ehk CNAME) ressursikirje ==
Kanoonilise nime (CNAME) ressursi kirje genereerib FQDNile aliase. CNAME kirjeid kasutades on võimalik võrgu implementatsiooni detaile kasutajate eest varjata. Näiteks on vaja panna üles FTP server nimega ''ftp1.naide.ee'' mis kuulub ''naide.ee'' domeeni. On aga teada, et varsti on vaja server üle viia masinasse ''ftp2.naide.ee''. Samas on vaja, et muudatuse mõju kasutajale oleks võimalikult väike. Kõige lihtsam viis seda teha on luua alias ''ftp.naide.ee'' mis viitab masinale ''ftp1.naide.ee''. Kui aga masin, milles FTP server asub, muudab oma asukohta ''ftp2.naide.ee''ks, siis on vaja ainult muuta CNAME kirjet, et ta viitaks masinale ''ftp2.naide.ee''.
<pre style="display: inline-block;">
ftp.naide.ee.    IN      CNAME      ftp1.naide.ee.
</pre>
== MX (ingl. k. ''Mail Exchanger'') ressursi kirje ==
MX-kirjega määratakse e-posti "vahejaamad" ehk postiserverid, mida kasutatakse kas kirjade edastamiseks või on tegu lõpp-punktiga. MX-kirjetega määratakse ära ka postiserverite prioriteet. Kõige väiksema prioriteediväärtusega teekonnakirje määrab domeenis posti eest vastutava postiserveri. Kirja edastamiseks lõpp-punktile lähemal asuvale serverile kasutatakse SMTP protokolli.
<pre style="display: inline-block;">
@ IN MX 5 mailserver1.naide.ee.
@ IN MX 10 mailserver2.naide.ee.
@ IN MX 20 mailserver3.naide.ee.
</pre>
== DNSi nimelahenduse protsess ==
Kui DNS serverie saadetakse päring, siis server võib vastata mitmel erineval viisil. Järgnevad on nendest enamlevinumad.
* Autoriteetne vastus - Autoriteetne vastus on positiivne vastus, mis on saadetud kliendile koos markeeritud autoriteetse bitiga DNSi sõnumis. See näitab, et vastus oli saadud serverilt, millel on otsevastutus päritud nime üle.
* Positiivne vastus - Positiivne vastus koosneb päritud ressursikirjest või kirjete nimestikku (ka "ressursikirjete komplekt" (ingl. k. ''resource record set'')) mis sobib päritud DNS domeeni nime ja kirje tüübiga päringusõnumis. Positiivsed vastused ei pruugi olla autoriteetsed.
* Viitav vastus - Viitav vastus koosneb täiendavatest ressursikirjetest, mis ei ole päringus spetsifitseeritud ei nime ega tüübi järgi. Seda tüüpi vastus saadetakse kliendile, kui rekursiooni protsess ei ole toetatud serveri poolt. Need kirjed on mõeldud kasulike viidetena, mida klient saab iteratsiooni kasutades päringu jätkamisel kasutada. Viitav vastus sisaldab lisainfot, nagu näiteks ressursikirjed, mis on teistsugused kui need, mida päriti. Näiteks kui päriti ''host''i nime "''www''" ja mitte ühtegi A ressursi kirjet sellele nimele ei leitud aga leiti CNAME ressursi kirje "''www''"le, siis DNS server saab selle informatsiooni kliendile vastamisel lisada. Kui klient saab kasutada iteratsiooni, siis võib ta viitavat informatsiooni kasutades teha edasisi päringuid, et üritada päritav nimi täielikult lahendada.
* Negatiivne vastus - Negatiivne vastus serveri poolt võib tähendada, et kui server üritas rekursiivselt, täielikult ja autoritatiivselt päringut lahendada, ilmnes üks kahest probleemist
** Autoriteetne server raporteeris, et sellist nime ei eksisteeri DNSi nimevahemikus
** Autoriteetne server raporteeris, et päritud nimi eksisteerib, kuid ühtegi kirjet tüübi kohta ei eksisteeri sellele nimele.
Lahendaja edastab päringu vastuse tagasi päringu esitanud programmile ja paneb vastuse vahemällu.
== Juurvihjed (ingl. k. ''root hints'') ==
DNS serverid lahendavad DNS päringuid kasutades lokaalseid autoritatiivseid või vahemälus olevaid andmeid. Kui aga serveris ei ole päritud andmeid ja ta ei ole autoritatiivne päritud nime suhtes, siis ta võib sooritada rekursiivse lahenduse või saata viite teisele DNS serverile olenevalt sellest, kas klient päris rekursiooni või mitte. DNS serveri teenus peab olema konfigureeritud juurvihjetega, et lahendada päringuid nimedele, mille suhtes server ei ole autoritatiivne või millele tal ei ole delegatsiooni. Juurvihjed sisaldavad endas nimesid ja IP aadresse DNS serveritele, mis on autoritatiivsed juurtsooni suhtes. Juurserverite nimekirja on võimalik hallata DNSi konsoolist või kasutades CLI-s käsku ''dnscmd''.
Vaikimisi kasutavad MS DNS serverid juurvihjete faili nimega ''cache.dns''. ''Cache.dns'' faili hoitakse ''%systemroot%\System32\Dns'' kaustas. Server käivitamisel laetakse mällu ka ''cache.dns''.
Kui DNS serveri konfigureerimiseks kasutada Windows Server 2008 GUId, siis see saadab nimeserveri päringu juurdomeeni kohta eelistatud ja alternatiivsetele DNS serveritele. Päringuvastus pannakse DNS serveri juurvihjetesse. Kui ühtegi juurserverit ei tuvastata, siis viisard saadab päringu cache.dns failis nimetatud DNS serveritele,  mis vastavad juurserveritele Internetis. Kui mitte ühtegi juurserverit ei tuvastata, siis viisard teatab kasutajale, et ta kas teeks antud serveri juurserveriks või lisaks juurvihjed käsitsi. Juurvihjeid tasuks alati uuendada, sest siis töötab server efektiivsemalt. Juurvihjeid tuleks uuendada iga kord, kui lisatakse uus server või muudetakse olemasolevat.
== Iteratiivne ja rekursiivne DNS päring ==
[[Image:Iteratiivne_paring.JPG|Iteratiivne päring|thumb|left|upright=4]]
[[Image:Rekursiivne_paring.JPG|Rekursiivne päring|thumb|left|upright=4]]
==Kasutatud allikad==
* Tony Northrup and J.C. Mackin (2008). MCTS Self-Paced Training Kit (Exam 70-623): Windows Server 2008 Network Infrastructure Configuration. Redmond: Microsoft Press
* [http://technet.microsoft.com/en-us/library/cc772774%28WS.10%29.aspx Microsoft TechNet - DNS]
==Koostaja==
Sander Laasik A21
[[Category: Windows Server administreerimine]]

Latest revision as of 12:07, 9 May 2010

Sissejuhatus

DNS (ingl Domain Name System) ehk Domeeninimede süsteem on teenus, mis tõlgib domeeninimed TCP/IP võrkudes kasutatavateks IP-aadressideks. Süsteemi töö põhimõte seisneb selles, et ta võtab inimesele mugavalt loetava veebiaadressi näiteks "http://www.neti.ee", mis sisaldab endas domeeninime neti.ee ja ta tõlgib selle ümber arvutitele arusaadavaks IP-aadressiks [195.50.209.244].

DNSi domeeninimede süsteem

Domeeninimede süsteem võimaldab mõistlikul viisil määrata interneti kasutajagruppidele domeeninimesid, mis on sõltumatud iga kasutaja füüsilisest asukohast. Tänu sellele võivad paljud lingid, k.a. ka veebis kasutatavad hüperlingid, jääda samaks läbi aastate hoolimata sellest, et teenusepakkuja vahetab kas oma füüsilist asukohta ja selletõttu ka oma IP-aadressi või ainult IP-aadressi. Inimestel on kergem jätta meelde domeeniaadresse, mis on nimelised (mnemoonilised) kui neile vastavaid IPv4 või IPv6 aadressid numberkujul.

DNS on sisuliselt hierarhiliselt korraldatud hajusandmebaas, kus kõige tipus on juurtsooni (ingl. k. root zone) serverid. Seda nimetatakse ka ühtlasi tipptaseme domeeniks (ingl. k. top-level domain), kuhu kuuluvad serverid omavad IP-aadresse serveritele, kes on vastutavad kõrgema astme domeeni eest. Seda on kõige parem seletada järgmise näitega.

Meil on domeen näiteks domeen microsoft.com selle juurtsooniks peetakse "." osa domeeniks. Tipptaseme domeeniks nimetatakse aga aadressi ".com" osa. Teise taseme domeeniks on aga "microsoft". Iga nimi tipptaseme domeenis "com" peab olema unikaalne. Samas aga üle domeenide võib esineda ka duplikatsiooni, näiteks: kalle.com ja kalle.org, mis on tegelikult täiesti erinevad hostid. Kõige vasakpoolsem osa domeeninimest on hosti nimi. Näiteks computerA.contoso.microsoft.com viitab arvutile A "contoso" domeenis, mis asub teise astme domeenis "microsoft", mis omakorda asub ".com" kõrgema astme domeenis.

Teise taseme domeenid on registreeritud üksikisikute või organisatsioonide nimele, nagu näiteks Microsofti Korporatsioon või eesti.ee domeen, mis on Eesti Vabariigi riigiportaal. Teise taseme domeenidel võib olla väga palju alamdomeene ja iga domeen võib sisaldada endas mitmeid hoste nagu näiteks printer1, arvuti2, dc2 jne. Üks hierarhilise struktuuri suur eelis on see, et on võimalik hoida kahte sama hostinimega masinat kahes erinevas struktuurikohas. Näiteks: arvuti1.ari.lapland.fi ja arvuti1.it3.lapland.fi.

DNS serverite tüübid on määratud sellega, mis tüüpi tsooni või tsoone nad hostivad ja mis funktsioone nad täidavad. DNS server võib hostida kas primaarset või sekundaarset tsooni või mõlemat. Kui DNS server ei hosti ühtegi tsooni, siis nimetatakse seda serverit caching-only serveriks. Serverit nimetatase autoriteetseks mingi tsooni puhul, kui ta hostib kas primaarset või sekundaarset DNS domeeni tsooni. Windows Server 2003 ja 2008 toetavad järgmisi DNS serveri tüüpe:

  • Primaarne DNS server - primaarsed nimeserverid on konfigureeritud hostima ühte või mitut primaarset DNS tsooni. Standard- või faili-paketeeritud tsoonide puhul, kui tehakse muudatus tsooniandmetes, näiteks lisatakse ressursi andmeid tsoonile, tuleb teha see muudatus selle tsooni primaarserveris. Vastavad muudatused kanduvad edasi sekundaarsetesse nimeserveritesse. AD-integreeritud tsoonide puhul aga pole mingit erinevust primaarsete ja sekundaarsete serverite puhul.
  • Sekundaarne DNS server - sekundaarne nimeserver hostib ühe või mitme sekundaarse tsooni andmebaasi. Kuna sekundaarse tsooni loomiseks kasutatakse tsooniülekannet (ingl. k. zone transfer), siis peab primaarserver ja vastav tsoon juba olemas olema.
  • Caching-only serverid ei hosti ühtegi tsooni ja ei ole autoritatiivsed mingi domeeni jaoks. Caching-only DNS serverid alustavad tühja vahemäluga ja täidavad seda ressursikirjete (ingl. k. Resource Records) sissekannetega, vastates klientide päringutele. Vastav informatsioon on siis juba vahemälus olemas järgmistele klientide päringutele. Caching-only server on vajalik kohtades, kus vajatakse lokaalset DNS-funktsionaalsust, kuid eraldi domeeni või tsooni pole vaja luua.

DNS tsoonid

Tsoonid on DNSi hierarhilise struktuuri oluline osa, need aitavad jaotada nimelahendamise töökoormust. Tsoon on kogum hostinimesid ja neile vastavaid IP-aadresse. Üks tsoon võib sisaldada ühe või mitme domeeni ressursikirjeid (ingl. k. Resource Records). Üks tsoon võib hoida endas rohkem kui ühte domeeni ainult juhul, kui domeenid on järjestikused ehk siis on ühendatud otsese "parent-child" suhtega. Kui domeeninimi jaotada ära tsoonideks, siis on võimalik selle abil delegeerida domeeninime eri osadele vastavat vastutust.

DNS serverites hoitakse tsooniinfot kahel viisil:

  • Tekstipõhises tsoonifailis, mis sisaldab nimekirja kaardistustest (ingl. k. mappings), mida kutsutakse standardtsooniks (ingl. k. standard zone) või faili-paketeeritud tsooniks (ingl. k. file-backed zone)
  • Active Directory andmebaasis, mida nimetatakse Active Directory-integreeritud e. AD-tsooniks (ingl. k. Active Directory-integrated zone)

Iga tsoon võib olla kas forward lookup zone või reverse lookup zone ja omakorda veel 3 erinevat tüüpi:

  • Primaartsoon (ingl. k. Primary zone)
  • Sekundaartsoon (ingl. k. Secondary zone)
  • in-addr.arpa tsoon
  • Stub tsoon (ingl. k. Stub zone) - toetatud ainult Windows Server 2003 ja 2008 poolt.

Seega võib DNS server olla väga erinevate tsoonitüüpidega, nt. Standard primary forward lookup zone.

DNS servereid on võimalik konfigureerida nii, et üks server hostib mitut tsooni ja on ka võimalik segada kokku erinevaid tsoonitüüpe. Näiteks üks DNS server võib hostida samaaegselt kalle.com primaartsooni ja malle.comi sekundaartsooni. See on abiks, kui on tegu ühe ettevõtte eri divisjonide või osakondade projektidega, mis vajavad ligipääsu võrguressurssidele üle mitme organisatsiooni.

NB! Järgnev näide põhineb Windows Server 2008-l. Erinevatel operatsioonisüsteemide puhul võib see erinev olla.

  • Standardne primaartsoon. See hostib DNS tsooni kirjutamis-/lugemisõigustega koopiat, kus luuakse ja manageeritakse ressursikirjeid (ingl. k. resource records). Tsooni master-koopiat võib hostida ainult 1 server. Ühelgi teisel primaarserveril ei ole lubatud antud tsooni master-koopiat hostida ja ainult server, mis hostib primaartsooni, tohib aktsepteerida dünaamilisi uuendusi ja töödelda tsoonimuudatusi. DNS serverite ülesseadmisel asub domeeni primaarserver enamasti kuskil, kus tema tsoonifailile on administratiivne ligipääs.
  • Standardne sekundaartsoon. Standardse sekundaartsooni faili koopiat võib hoida ühel või rohkemal serveril, et balansseerida võrgukoormust, tagada kõrgemat käideldavust või sundida päringuid üle aeglaste WAN (ingl. k. Wide Area Network) linkide. Sekundaartsoon on sisuliselt ainult lugemisõigustega koopia standardsest primaartsoonist. Standardsetes tsoonides saadetakse informatsioon primaartsoonidest sekundaartsoonidesse tsooniülekande (ingl. k. zone transfer) abil. Tsooniülekanne on sisuliselt tsoonifaili kopeerimine primaarserverist sekundaarsesse. Tsooniülekanne võib olla täis tsooniülekanne (ingl. k. full zone transfer (ehk AXFR)), kus kopeeritakse kogu tsoonifail primaarserverist sekundaarserverisse või kuhjuv tsooniülekanne (ingl. k. incremental zone transfer (ehk IXFR)), kus kopeeritakse pärast algelist AXFRi ainult informatsioonimuudatused. Seda kasutatakse enamasti liikluse vähendamiseks primaar- ja sekundaarserverite vahel.
  • Reverse lookup zone. Enamik päringuid, mis DNS serveri poole saadetakse, on forward query'd. Nad pärivad IP aadressi DNSi nime põhjal. DNS pakub ka tagurpidi otsimise võimalust (ingl reverse lookup). See tähendab, et host saab teha kindlaks teise hosti nime IP aadressi põhjal. Näiteks on päring vastav: "Mis on DNS domeeni nimi milles asub host IP aadressiga 192.168.100.1?" Selleks, et vastata sellele päringule, konsulteeritakse in-addr.arpa domeeniga selle IP aadressi asjus. Kui lugeda IP aadressi vasakult paremale, siis vasakule jääb mingi osa bitte mis representeerivad võrgu osa aadressist ja ülejäänud paremale jäävad bitid on hosti osa, vastavalt alamvõrgumaskile (ingl. k. subnet mask). Näiteks 192.168.100.2 alamvõrgumaskiga 255.255.255.0 tähendab, et võrgu osa on 192.168.100 ja hosti osa on 2. Kuna kõrgema taseme osa aadressist jääb paremale, siis tuleb see keerata tagurpidi, et domeenipuud ehitada. Kuna FQDNid (ingl. k. Fully Qualified Domain Name) lähevad täpsemast üldisemaks ja IP aadressid lähevad üldisemast täpsemaks, siis selleks, et teha tagurpidipäringut, tuleb eelnevalt IP aadress pöörata ümber, kui teda on vaja liita in-addr.arpa domeeniga. Näiteks, tagurpidi päringu tsooniks subnetile 192.168.100.0 on 100.168.192.in-addr.arpa. In-addr.arpa domeeni puu kasutab IP aadressi hosti nimega seostamiseks PTRi (ingl Pointer Resource Record). Vastav lookup peaks andma aadressi (A) ressursi andmed hostile forward lookup tsoonis. Reverse lookup päringuid kasutatakse enamasti võrgu aplikatsioonide poolt verifitseerimiseks kui identifitseerimiseks või siis monitoorimiseks ja vigade otsimiseks DNSi teenusest. In-addr.arpa domeeni kasutatakse ainult IPv4-l baseeruvates võrkudes. IPv6-l baseeruvates reverse lookup tsoonides kasutatakse ip6.arpa domeeni, mis pakub sama funktsionaalsust nagu in-addr.arpa domeen IPv4 võrkudes.
  • Stub tsoon - Windows Server 2003 või 2008 baasil töötav DNS server toetab ka uut tüüpi stub tsoone. Stub tsoon on koopia tsoonist mis hoiab selle tsooni jaoks autoritatiivsete DNS serverite identifitseerimiseks vajalikke ressursiandmeid. Stub tsoon on pointer DNS serveri pihta, mis on selle tsooni jaoks autoritatiivne ja seda kasutatakse DNSi lahendumise efektiivsuse hoidmiseks või parandamiseks. Stub tsoon hoiab endas alamhulka tsooniandmetest, mis sisaldavad endas SOA'd (ingl. k. Start of Authority), nimeserveri (ingl. k. Name Server) ja A kirjet. Nagu ka standardses sekundaartsoonis, ei saa ka stub tsoonis muuta ressursiandmeid. Neid saab muuta vaid primaartsoonis.

Stub tsoonid võimaldavad DNS serveril ilma päringut Internetti või juurserverisse saatmata DNS päringuid lahendada, kasutades stub tsooni nimeserverite nimekirja. Stub tsoone kasutades on võimalik sekundaarseid tsoone koormamata läbi terve DNSi infrastruktuuri jaotada laiali mingi tsooni jaoks autoritatatiivsete DNS serverite nimekiri. Siiski ei paku stub tsoonid sama funktsionaalsust kui sekundaarsed tsoonid ja neid ei tohiks kasutada aadresside liiasuse vähendamise ja koormuse jaotamise lahendusena.

Tsoonide info Active Directorys hoidmise eelis

  • Rikketaluvus - liiasusega informatsiooni DNS tsoonide kohta saab hoida mitmes serveris korraga.
  • Turvalisus - Active Directory's hoitavad DNS tsoonid saavad ära kasutada DACLi (ingl Discretionary Access Control List) tugevdatud turvalisust. DACL võimaldab määrata, millised kasutajad ja millised grupid saavad muuta DNS tsoone. Samuti on võimalik ka määrata turvalised dünaamilised uuendused (ingl Secure Dynamic Updates) AD-integreeritud tsoonidele, mis lubab muuta andmeid ainult kliendil kes algselt nad registreeris.
  • Tsoonid on multimasterid - tsoone saab uuendada rohkem kui ühest kohast (serverist). Kõik domeenikontrollerid, kus tsoone hoitakse, saavad vastavaid tsoone muuta ja muudatused kantakse üle ka teistesse domeeni kontrolleritesse, kus selle tsooni faili hoitakse.
  • Tõhus replikatsioon - tsooniülekanded asendatakse palju tõhusama AD replikatsiooni vastu. See on oluline aeglastes võrkudes, sest AD pakib eelnevalt kokku erinevate saitide vahel ülekantavaid replikatsiooniandmed.
  • Sekundaarsete tsoonide kasutamise võimaluse hoidmine - tsoone, mida hoitakse ADs, on võimalik saata standardsetele sekundaarserveritele ja luua sinna sekundaarseid tsoone samamoodi nagu kantakse üle file-backed sekundaartsoone.

Windows Server 2003 ja Windows Server 2008 pakuvad Windows 2000 Serverist efektiivsemat viisi DNS tsoonide replikeerimiseks. Windows 2000 Serveris olevate AD tsoonide uuendused replikeeriti kõikidesse selles domeeni domeenikontrolleritesse, ükskõik kas nad olid konfigureeritud DNS serveriteks või mitte.

Windows Server 2003 ja Windows Server 2008, AD-integreeritud tsoone on võimalik konfigureerida 3 erineva replikatsiooni ulatusega, mis tähendab seda, et nendes olevat informatsiooni saab replikeerida 3 erineval viisil.

  • Kõikidesse domeenikontrolleritesse selles domeenis.
  • Kõikidesse domeenikontrolleritesse mis on lokaalse domeeni DNS serverid, samuti tuntud ka kui DomainDNSZones aplikatsiooni partitsioon.
  • Kõikidesse domeeni kontrolleritesse, mis on ka DNS serverid terves forestis, samuti tuntud ka kui ForestDNSZones aplikatsioon.

On võimalik teha 2 tüüpi AD-integreeritud tsoone: forward lookup tsoon ja reverse lookup tsoon.

  • Active Directory-integreeritud forward lookup tsoon on sarnane standardsele primaartsoonile. Väljaspool ADd on primaar- ja sekundaarserverid vajalikud, kuna nad järgivad ühte kindlat ühte tipmist uuendusmudelit (ingl. k. master update model), kus ainult ühel serveril on tsooni andmebaasi kirjutamisõigustega koopia. Siiski järgivad AD-integreeritud tsoonid multimaster uuendusmudelit, kus kõigil AD-integreeritud tsoonidel on olemas kirjutamis- ja lugemisõigustega tsoonikoopiad ja kõik võivad teha tsooniinfos muudatusi. Siin ei ole primaarsed ja sekundaarsed tunnusjooned vajalikud.
  • Active Directory-integreeritud reverse lookup tsooni kasutatakse IP aadressile vastava nime saamiseks ja see sarnaneb standardse in-addr.arpa tsooniga. Reverse lookup tsooni hoitakse ja uuendatakse sama moodi nagu Active Directory-integreeritud forward lookup tsooni.

DNSi delegeerimine

Algselt hoiab tsoon endas ainult ühe DNSi domeeninime infot. Uute domeenide lisamisel tuleb otsustada, kas domeen on osa samast tsoonist või mitte. Kui otsustatakse lisada alamdomeen, siis võib seda alamdomeeni hallata osana algsest tsoonist või delegeerida selle haldamine mingile teisele tsoonile.

Kõrvaloleval joonisel on näha kalle.ee domeen, mis sisaldab endas firma "OÜ Kalle" domeeninimesid. Kui kalle.ee domeen loodi algselt ainsale serverile, siis konfigureeriti see kui ainus tsoon kogu Kalle DNSi nimevahemikule (ingl namespace). Kui aga kalle.ee domeen peaks vajama alamdomeene, siis need alamdomeenid peavad olema tsooni kaasatud või delegeeritud eemale mõnda teise tsooni. Konkreetses näites kalle.ee domeen omab alamdomeeni ari.kalle.ee, mis on delegeeritud eemale kalle.ee domeenist ja hallatud omaenda tsooni poolt. Siiski, kalle.ee tsoon peab sisaldama mõnda ressursikirjet, et pakkuda delegeerimisinfot, mis viitaks DNS serveritele, mis on autoritatiivsed delegeeritud ari.kalle.ee alamdomeenile. Kui kalle.ee tsoon ei kasutada delegeerimist alamdomeenidele, siis alamdomeeni andmed jäävad osaks kalle.ee tsoonist. Näiteks dev.kalle.ee alamdomeen ei ole delegeeritud mujale, aga on kalle.ee tsooni poolt hallatud.

DNSi tsooniülekande konfigureerimine

Tsooni ülekanded on täielikud või osalised tsooni andmete ülekanded primaarsest DNS serverist, mis hostib antud tsooni, sekundaarsesse DNS serverisse mis hostib tsooni koopiat. Koopia sekundaarsesse DNS serverisse tehakse algselt tsooni ülekande abil. Kui primaarse DNS serveri tsooni tehakse muudatusi siis primaarne DNS server annab sellest sekundaarsetele DNS serveritele teada ja muudatused kopeeritakse kõikidesse sekundaarsetesse DNS serveritesse selle tsooni kohta tsooni ülekannete abil.

Algselt toetas DNS ainult täielikke tsooniülekandeid. Alates Windows Server 2000-st on võimalik kasutada ka kuhjuvat tsooniülekannet.

Järgnevad sündmused käivitavad tsooniülekande:

  • Ülekanne algatatakse käsitsi sekundaarse serveri konsoolist.
  • Tsooni värskendusintervall aegub.
  • Sekundaarsel serveril käivitatakse DNS serveri teenus.
  • Peaserver teavitab muudatusest tsoonis.

Tsooniülekanded on alati alagatatud antud tsooni sekundaarserveri poolt ja saadetud konfigureeritud peaserverile, mis on tsooni lähte esindajaks. Kui peaserver saab päringu antud tsoonile, siis ta võib vastata kas IXFRi või AXFRiga, et kanda tsoon üle sekundaarsesse serverisse.

Kogu tsooniülekanne toimub järgnevalt:

  1. Kui värskendamisväljal olev väärtus sekundaarses serveris oleval SOAl aegub, siis pärib sekundaarne server primaarselt serverilt primaarse tsooni kohta SOA andmeid.
  2. Primaarne DNS antud tsoonile vastab päringule SOA andmetega.
  3. Sekundaarne DNS server võrdleb seeria numbrit saadud SOAs. Kui number on primaarse DNSi poolt saadetud SOAs suurem, tuleb teha tsoonile uuendus. Sekundaarne DNS server saadab selle peale AXFR päringu.
  4. Primaarne DNS server võtab tsooniülekandmise päringu vastu ja saadab kogu tsooni andmebaasi sekundaarsele DNS serverile, sisuliselt kopeerides tsooni ja jättes tsooni sätted samaks.

Kuhjuv tsooniülekanne toimub järgnevalt:

  1. Sekundaarserveri algsel konfigureerimisel saadab ta oma DNS peaserverile kogu tsooniülekandmise päringu. Peaserver vastab sellele sekundaarserverile kogu tsooni koopia saatmisega.
  2. Igal tsoonisaadetisel on seerianumbri kujul olev versioon. Antud andmed on koos värskendamis intervalliga SOAs. Värskendamisintervall määrab ära, millise ajavahemiku jooksul sekundaarserver esitab lähteserverile päringu tsoonist uue koopia saamiseks.
  3. Kui intervall möödub, siis saadab server SOA kuhjuva tsooniülekande päringu.
  4. Lähteserver vastab sellele päringule, saates serverile SOA kirje, mis sisaldab eelnevalt mainitud seerianumbrit.
  5. Server võrdleb saadud seerianumbrit SOA kirjes oleva seerianumbriga. Kui numbrid on võrdsed siis ülekannet ei pärita ja värskendus intervall algseadistatakse.
  6. Kui seerianumbri väärtus SOA vastuses on suurem, siis saadab server IXFR päringu. Päring sisaldab endas ka kohalikku seerianumbrit, et lähteserver teaks, mis andmeid server vajab.
  7. Olenevalt mitest erinevast faktorist, lähteserver kas vastab kuhjuva või kogutsooniülekandega. Kuhjuva tsooniülekande puhul pole peamist DNS serverit antud tsoonile vaja. Ta võib võida ka kogu tsooni ülekandmise kasuks järgnevatel konditsioonidel:
    1. Primaarne DNS server ei toeta IXFRi
    2. Primaarsel DNS serveril ei ole kõiki vajalikke andmeid, et teha IXFRi
    3. IXFR kasutab rohkem võrguressurssi kui kogu tsooni ülekandmine.

Kui sekundaarne DNS server saab kätte kuhjuva tsooniülekande, loob ta uue versiooni tsoonist ja alustab aegunud ressursikirjete väljavahetamist uutega, alustades vanimast. Kui kõik uuendused on tehtud, asendab DNS server vana tsooniversiooni uuega.

DNSi ressursikirjed (ingl. k. Ressource Records)

DNSi ressursikirjed on DNSi domeeniga seotud informatsioon. Näiteks hosti andmed defineerimaks hosti IP aadressi. Ressursikirjed on DNSi päringutes ja vastustes esitatud binaarkujul, tsoonifailides aga tavalise tekstina. Windows Server 2008-s luuakse ressursikirjed DNSi konsoolis või läbi CLI (ingl. k. Command-Line Interface) käsu dnscmd abil.

Nimi Kirjeldus
Omanik Identifitseerib, kellele antud DNSi domeeni ressursikirje kuulub.
TTL (ingl. k. Time to Live) 32-bitine täisarv, mis esitab maksimaalset aega sekundites, mille jooksul DNS server või klient antud ressursikirjet vahemälus hoiab. Selle aja täitumisel antud kirje kustutatakse. See väli ei ole kohustuslik ja kui seda ei ole siin kirjeldatud, siis klient kasutab minimaalset osa TLLi SOA kirjest.
Klass Defineerib protokolli "pere", mida kasutatakse. See on IN ehk siis Internet system
Tüüp Tuvastab ressursikirje tüübi. Näiteks A indikeerib, et ressursi kirje sisaldab endas hosti aadressi.
Resource Record Data (RDATA) RDATA väli on muutuva pikkusega ja sisaldab ressursikirjes kirjeldatavat informatsiooni. Näiteks A ressursikirjes on 32 bitine IP aadress, mis on omaniku poolt identifitseeritud host.

DNSi andmebaas koosneb ressursikirjetest, mis viitavad erinevale informatsioonile nimedest andmebaasis. DNSi nime ressursikirje võib identifitseerida kindla võrguressursi, näiteks kindlat nime kasutava hosti, või teenuse, mis käib antud hosti peal, näiteks e-mail. Erinevat tüüpi ressursikirjed pakuvad arvutite kohta TCP/IP võrgus erinevaid DNSi andmeid. Tüüpilised andmed on välja toodud järgmises näites. Antud näited sisaldavad ka Windows Server 2000,2003 ja 2008 DNSi implementasioonile spetsiifilisi ressursikirjeid.

Ressursi kirjete tüübid
Kirjeldus Klass TTL Tüüp Andmed
SOA Internet (IN) 60 minutit SOA Omaniku nimi, primaarse nimeserveri FQDN, seerianumber, värskendusintervall, korduskatse intervall, aegumisaeg ja miinimum TTL
Hosti (A) kirje Internet (IN) SOA TTL sama tsooni kohta A Omaniku nimi (hosti DNS nimi) ja hosti IPv4 aadress
Hosti (AAAA) kirje Internet (IN) SOA TTL tsoonis AAAA Omaniku nimi (hosti DNS nimi) ja hosti IPv6 aadress
Nimeserver Internet (IN) SOA TTL sama tsooni kohta NS Omaniku nimi ja DNS serveri nimi
MX kirje (ingl. k. Mail Exchanger) Internet (IN) SOA TTL sama tsooni kohta MX Omaniku nimi, MX serveri DNSi nimi ja eelistusnumber (ingl. k. preference number)
CNAME kirje (ingl. k. Canonical Name Record) Internet (IN) SOA TTL sama tsooni kohta CNAME Omaniku nimi (alias) ja hosti DNSi aadress.
SRV kirje (ingl. k. Service Location Record) Internet (IN) SOA TTL sama tsooni kohta SRV Teenuse nimega seotud domeeninimi (LDAP, KDC, etc), protokolli kaal, prioriteetsus, pordinumber.

SOA (ingl. k. Start of Authority) ressursikirje

Iga tsoon sisaldab SOA ressursikirjet iga tsoonifaili alguses. SOA ressursikirje osutab tsoonis hoitava informatsiooni alg- või originaalpunktile. SOA sisaldab kõike antud tsooni haldamiseks DNS serverile vajalikku tsooni-spetsiifilist infot. SOA ressursikirje on esimene ressursikirje, mis uue tsooni loomisel luuakse.

RDATA väli SOA ressursi kirjes sisaldab endas järgmisi välju.

RDATA väljad SOA ressursi kirjes
RDATA väli Kirjeldus
Autoritatiivne server Sisaldab selle tsooni jaoks autoritatiivse primaarse DNS serveri nime.
Vastutav isik Näitab selle tsooni eest vastutava isiku e-maili aadressi. (@) märke asemel kasutatakse (.) märget.
Seerianumber Näitab, mitu korda on tsooni uuendatud. Kui tsooni sekundaarserver võtab peaserveriga ühendust, et teha kindlaks vajadus tsooniülekannet alustada, siis võrdleb ta oma seerianumbrit peaserveri omaga. Kui peaserveri seerianumber on suurem, siis sekundaarserver alustab tsooniülekannet.
Värskendus Näitab kui tihti tsooni sekundaarserver kontrollib, kas tsooni andmeid on muudetud.
Korduskatse Näitab, peale tsooni ülekande päringu saatmist (sekundites) kui kaua sekundaarne server ootab enne päringu uuesti saatmist.
Aegumine Näitab sekundites, kui kaua tsooni sekundaarne server pärast tsooniülekannet tsooni päringutele vastab enne, kui enda tsooni kehtetuks tunnistab.
Miinimum TTL Kehtib kõigile tsooni ressursikirjetele alati, kui TTLi väärtus ei ole kas spetsifitseeritud või on lühem kui minimaalne TTL SOA kirjes. Ükskõik, millal DNSi klient serverile päringu saadab, saadab server vastu ressursikirjed, mis sisaldavad kirje-spetsiifilist TTLi või minimaalset TTLi. Negatiivsed vastused hoitakse vahemälus miinimum TTLi aja välja toodud autoriteetse tsooni SOA ressursi kirjes.

Nimeserveri (NS) ressursi kirje

Nimeserveri (NS) ressursikirje identifitseerib selle tsooni jaoks autoritatiivse DNS serveri, st. DNS server mis hostib konkreetse DNS tsooni primaar- või sekundaarkoopiat. Antud tsooni jaoks autoritatiivse DNS serveri nime hoitakse RDATA väljal. Nimeserveri kirjeid kasutatakse nii primaarsete kui sekundaarsete DNS serverite SOAs kirjeldatud tsoonis indikeerimiseks ja ka indikeerimaks DNS servereid erinevatele delegeeritud tsoonidele. Kui tsoonil on mitu autoritatiivset serverit (näiteks primaarserver ja üks või rohkem sekundaarserverit), siis peab igaühe kohta leiduma NSi kirje.

kalle.ee.    IN      NS      ns.kalle.ee.

Kanoonilise nime (ingl. k. Canonical Name ehk CNAME) ressursikirje

Kanoonilise nime (CNAME) ressursi kirje genereerib FQDNile aliase. CNAME kirjeid kasutades on võimalik võrgu implementatsiooni detaile kasutajate eest varjata. Näiteks on vaja panna üles FTP server nimega ftp1.naide.ee mis kuulub naide.ee domeeni. On aga teada, et varsti on vaja server üle viia masinasse ftp2.naide.ee. Samas on vaja, et muudatuse mõju kasutajale oleks võimalikult väike. Kõige lihtsam viis seda teha on luua alias ftp.naide.ee mis viitab masinale ftp1.naide.ee. Kui aga masin, milles FTP server asub, muudab oma asukohta ftp2.naide.eeks, siis on vaja ainult muuta CNAME kirjet, et ta viitaks masinale ftp2.naide.ee.

ftp.naide.ee.    IN      CNAME      ftp1.naide.ee.

MX (ingl. k. Mail Exchanger) ressursi kirje

MX-kirjega määratakse e-posti "vahejaamad" ehk postiserverid, mida kasutatakse kas kirjade edastamiseks või on tegu lõpp-punktiga. MX-kirjetega määratakse ära ka postiserverite prioriteet. Kõige väiksema prioriteediväärtusega teekonnakirje määrab domeenis posti eest vastutava postiserveri. Kirja edastamiseks lõpp-punktile lähemal asuvale serverile kasutatakse SMTP protokolli.

@ IN MX 5 mailserver1.naide.ee.
@ IN MX 10 mailserver2.naide.ee.
@ IN MX 20 mailserver3.naide.ee.

DNSi nimelahenduse protsess

Kui DNS serverie saadetakse päring, siis server võib vastata mitmel erineval viisil. Järgnevad on nendest enamlevinumad.

  • Autoriteetne vastus - Autoriteetne vastus on positiivne vastus, mis on saadetud kliendile koos markeeritud autoriteetse bitiga DNSi sõnumis. See näitab, et vastus oli saadud serverilt, millel on otsevastutus päritud nime üle.
  • Positiivne vastus - Positiivne vastus koosneb päritud ressursikirjest või kirjete nimestikku (ka "ressursikirjete komplekt" (ingl. k. resource record set)) mis sobib päritud DNS domeeni nime ja kirje tüübiga päringusõnumis. Positiivsed vastused ei pruugi olla autoriteetsed.
  • Viitav vastus - Viitav vastus koosneb täiendavatest ressursikirjetest, mis ei ole päringus spetsifitseeritud ei nime ega tüübi järgi. Seda tüüpi vastus saadetakse kliendile, kui rekursiooni protsess ei ole toetatud serveri poolt. Need kirjed on mõeldud kasulike viidetena, mida klient saab iteratsiooni kasutades päringu jätkamisel kasutada. Viitav vastus sisaldab lisainfot, nagu näiteks ressursikirjed, mis on teistsugused kui need, mida päriti. Näiteks kui päriti hosti nime "www" ja mitte ühtegi A ressursi kirjet sellele nimele ei leitud aga leiti CNAME ressursi kirje "www"le, siis DNS server saab selle informatsiooni kliendile vastamisel lisada. Kui klient saab kasutada iteratsiooni, siis võib ta viitavat informatsiooni kasutades teha edasisi päringuid, et üritada päritav nimi täielikult lahendada.
  • Negatiivne vastus - Negatiivne vastus serveri poolt võib tähendada, et kui server üritas rekursiivselt, täielikult ja autoritatiivselt päringut lahendada, ilmnes üks kahest probleemist
    • Autoriteetne server raporteeris, et sellist nime ei eksisteeri DNSi nimevahemikus
    • Autoriteetne server raporteeris, et päritud nimi eksisteerib, kuid ühtegi kirjet tüübi kohta ei eksisteeri sellele nimele.

Lahendaja edastab päringu vastuse tagasi päringu esitanud programmile ja paneb vastuse vahemällu.

Juurvihjed (ingl. k. root hints)

DNS serverid lahendavad DNS päringuid kasutades lokaalseid autoritatiivseid või vahemälus olevaid andmeid. Kui aga serveris ei ole päritud andmeid ja ta ei ole autoritatiivne päritud nime suhtes, siis ta võib sooritada rekursiivse lahenduse või saata viite teisele DNS serverile olenevalt sellest, kas klient päris rekursiooni või mitte. DNS serveri teenus peab olema konfigureeritud juurvihjetega, et lahendada päringuid nimedele, mille suhtes server ei ole autoritatiivne või millele tal ei ole delegatsiooni. Juurvihjed sisaldavad endas nimesid ja IP aadresse DNS serveritele, mis on autoritatiivsed juurtsooni suhtes. Juurserverite nimekirja on võimalik hallata DNSi konsoolist või kasutades CLI-s käsku dnscmd.

Vaikimisi kasutavad MS DNS serverid juurvihjete faili nimega cache.dns. Cache.dns faili hoitakse %systemroot%\System32\Dns kaustas. Server käivitamisel laetakse mällu ka cache.dns.

Kui DNS serveri konfigureerimiseks kasutada Windows Server 2008 GUId, siis see saadab nimeserveri päringu juurdomeeni kohta eelistatud ja alternatiivsetele DNS serveritele. Päringuvastus pannakse DNS serveri juurvihjetesse. Kui ühtegi juurserverit ei tuvastata, siis viisard saadab päringu cache.dns failis nimetatud DNS serveritele, mis vastavad juurserveritele Internetis. Kui mitte ühtegi juurserverit ei tuvastata, siis viisard teatab kasutajale, et ta kas teeks antud serveri juurserveriks või lisaks juurvihjed käsitsi. Juurvihjeid tasuks alati uuendada, sest siis töötab server efektiivsemalt. Juurvihjeid tuleks uuendada iga kord, kui lisatakse uus server või muudetakse olemasolevat.

Iteratiivne ja rekursiivne DNS päring

Iteratiivne päring
Rekursiivne päring

Kasutatud allikad

  • Tony Northrup and J.C. Mackin (2008). MCTS Self-Paced Training Kit (Exam 70-623): Windows Server 2008 Network Infrastructure Configuration. Redmond: Microsoft Press
  • Microsoft TechNet - DNS

Koostaja

Sander Laasik A21