D.N.S.-Concept, Implementare, Functionare

1.Introducere

2.Conceptul de DNS

3.Implementare

4.Functionare

1.Introducere

In retelele de calculatoare, fiecare statie este identificata printr-o adresa IP si un nume. Acest nume este acordat de catre om pentru a face mai usoara apelarea respectivei statii, insa, pentru ca un calculator din retea sa-l apeleze pe altul, trebuie sa-i cunoasca adresa IP a celui din urma. Problema aceasta se rezolva prin asocierea numelui si adresei IP intr-o tabela. Pentru retelele mici, aceasta tabela se poate afla pe fiecare dintre statiile retelei iar continutul ei sa fie acelasi. Pe masura, insa, ce reteaua creste si, in plus, se mai si conecteaza la Internet, atunci aceasta abordare nu mai are sens fiind mare consumatoare de spatiu pe disc iar timpul de actualizare devine foarte mare (fiecare modificare aparuta in retea trebuie sa se reflecte in tabelele de pe fiecare statie in parte). Pentru a se rezolva aceasta problema a aparut conceptul de DNS.

2.Conceptul de DNS

D.N.S. (Domain Name System) reprezinta o alternativa la realizarea operatiei de asociere si rezolvare a numelui statiei. Utilizarea D.N.S. pentru transformarea numelui unei statii in adresa sa IP implica utilizarea unei baze de date globale, distribuita si ierarhica, care contine informatii (inclusiv adresele IP) referitoare la toate statiile din retea, precum si la cele aflate pe Internet.

Caracteristica de ierarhizare permite divizarea numelui in partitii ce pot fi administrate independent, numite DOMENII (sau SUBDOMENII).

Caracteristica de distribuire permite relocarea partitiilor (subdomeniilor) bazei de date pe mai multe servere de nume ce apartin diferitelor zone ale retelei sau Intenetului; in consecinta zonele ce detin servere de nume pot sa-si administreze subdomeniile proprii.

Un server de nume este o statie pe care se afla o partitie a bazei de date D.N.S. si pe care ruleaza un proces care se ocupa cu transformarea numelui statiei in adresa IP (in principal) si furnizarea unor altor informatii.

3.Implementare

Structura ierarhica a D.N.S. este asemanatoare cu structura sistemului de fisiere al calculatorului: astfel, D.N.S. urmeaza o dispozitie arborescenta. Sub nivelul de root (cel mai de sus) se definesc domeniile ce pot fi divizate in subdomenii, acestea putand fi divizate mai departe. Fiecarui subdomeniu i se aloca un nume (eticheta) care poate avea pana la 63 de caractere, iar fiecare subdomeniu poate fi divizat in, maxim, 127 de subdomenii.

Fiecare domeniu este reprezentat printr-o partitie in baza de date care contine informatii referitoare la statiile din respectivul domeniu si/sau la domeniile inferioare. Domeniile D.N.S. pot fi referite in doua modalitati, si anume relativ la domeniul parinte (prin utilizarea numai a numelui sau) sau relativ la root (abordarea absoluta). Specificarea numelui domeniului relativ la root se numeste FQDN (fully qualified domain name). Aceasta abordare este reprezentate printr-o succesiune de etichete separate prin ".", incepand de la numele domeniului tinta si terminand cu unul dintre domeniile principale. Domeniile principale sunt cele care au drept parinte root-ul, si sunt fiecare deservite de propriile servere de nume.

Structura ierarhica a D.N.S. permite ca doua statii sa aiba acelasi nume cata vreme nu apartin aceluiasi parinte.

Organizarea ierarhica a D.N.S. permite impartirea responsabilitatii administrarii Internetului in bucati mai mici si mai usor gestionabile. In consecinta, feicare organizatie care este membra Internet este responsabila cu administrarea propriului domeniu. Serverele de nume pe care le vor seta aceste organizatii vor stoca toate informatiile referitoare la statiile din domeniul propriu si au sarcina sa raspunda eventualelor cereri ce se vor formula. Odata delegata responsabilitatea administrarii domeniului unei organizatii, aceasta poate lua decizia impartirii domeniului propriu si delegarea responsabilitatilor de administrare a subdomeniilor. Aceasta decizie se va materializa prin relocarea unor partitii din baza de date D.N.S. pe serverele subdomeniilor, iar serverul parinte va stoca doar pointeri la serverele care gestioneaza propriile subdomenii. Astfel, daca primeste o cerere, serverul domeniului trimite respectiva cerere la serverele copii pentru generarea raspunsului.

Avantajele delegarii autoritatii:

Domeniile Internetului sunt de doua tipuri:

O zona reprezinta un subset de subdomenii ale unui domeniu parinte a carei autoritate este delegata unui domeniu copil al aceluiasi parinte (subdomeniile care apartin acestui subset trebuie sa fie divizate din domeniul caruia i se deleaga autoritatea zonala). In consecinta, un server poate avea autoritate asupra uneia sau mai multor zone.

Setarea unui serviciu D.N.S. pentru un domeniu (sau zona) implica crearea unui set de servere autoritative. Este recomandabil ca acest set sa contina minim doua servere de nume (primary DNS si secondary DNS).

Serverul de nume primar stocheaza fisierele bazei de date si este cel mai dificil de setat. Toate modificarile care se aduc retelei (fie asezarea, fie structura domeniului, fie simple actualizari) trebuie sa se reflecte in baza de date de pe serverul de nume primar.

Serverul de nume secundar este mai usor de setat decat cel primar, si difera fata de acesta prin aceea ca baza de date se copiaza de pe cel primar, operatie numita transfer zonal. De asemenea, serverul secundar este mai usor de intretinut.

La fiecare pornire, serverul secundar initiaza transferul zonal prin contactarea serverului primar si solicita toate informatiile referitoare la zona pe care o reprezinta. Apoi, in timpul functionarii, realizeaza periodic operatia de interogare a serverului primar pentru eventualele modificari aduse bazei de date. Serverul secundar poate fi configurat astfel incat sa realizeze copii de siguranta ale zonei de date pentru a nu mai fi necesar transferul zonal, iar baza de date de pe serverul secundar sa fie incarcata local. Prin aceasta se urmareste degrevarea retelei si eliberarea pe cat posibil pentru alte operatiuni, precum si situatia in care serverul secundar sa nu primeasca raspuns de la cel primar.

Avantajele unui server secundar:

4.Functionare

Cand un server de nume este interogat de un client, este obligatoriu ca serverul sa raspunda corect, indiferent daca domeniul apartine sau nu de respectivul server. Interogarile referitoare la alte domenii trebuie trimise la serverele ce detin autoritatea asupra respectivelor domenii. In acest caz, fiecare server de nume retine pointeri (inclusiv adresele IP) ale serverelor root. Acestea din urma trebuie sa contina informatii despre toate domeniile principale, iar acestea despre serverele lor copil, s.a.m.d.

Spre exemplu: un server primeste spre solutionare numele unei statii ce nu se afla in domeniul serverului respectiv. In acest caz, serverul trimite cererea la root iar acesta verifica ultima eticheta; cererea este trimisa la domeniul indicat de ultima eticheta; aici serverul responsabil verifica penultima eticheta si trimite cererea la serverul responsabil cu domeniul indicat de aceasta eticheta, s.a.m.d. pana cand se ajunge la serverul tata pentru respectiva statie. Acesta va returna adresa IP ai statiei numite.

Pentru economisirea capacitatii de transfer a retelei si pentru imbunatatirea timpilor de raspuns la cereri, D.N.S. defineste un mecanism de memorate tip cache a raspunsurilor pentru eventualele referiri ulterioare la statii pentru care s-a realizat operatia de transformare a numelui in adresa.

Serverele de nume memoreaza toate datele pe care la afla in procesul de generare a raspunsului pentru o cerere (aceste date sunt cele referitoare la statia pentru care s-a emis cererea, precum si referitoare la toate serverele de nume pe la care a trecut cererea). In aceste conditii, daca se va emite o cerere de rezolvare a numelui pentru o statie aflata intr-un domeniu al carui server a mai fost interogat anterior, atunci cererea nu va mai trece pe la root ci va fi transmisa direct la serverul corespunzator.

Aceste memorii cache sunt caracterizate de un timp de viata la expirarea caruia toate informatiile sunt sterse, urmand sa se execute o operatie de actualizare a memoriei.

In cazul cunoasterii adresei IP, pentru motive de securitate, se va dori si cunoasterea numelui statie corespunzator adresei. Aceasta operatiune se numeste rezolvare inversa a numelui.

Exista un domeniu principal special pentru aceasta operatiune: in-addr.arpa. Acesta este organizat in 256 de domenii, cate unul pentru fiecare valoare posibila a primului byte din adresa IP. Mai departe, pentru fiecare dintre aceste 256 de valori exista alte 256 corespunzatoare valorilor celui de-al doilea byte din adresa IP. Analog, pana la toti cei 4 bytes ai adresei IP, astfel incat tot spatiul de adrese internet este reprezentat in acest domeniu.

Fiecare organizatie conectata la internet are responsabilitatea administrarii propriului domeniu, precum si a inca unui domeniu, si anume, cel corespunzator spatiului de adrese din in-addr.arpa. O adresa in acest domeniu este cea inversa fata de normal si se incheie cu numele domeniului special (exemplu: pentru o adresa 193.226.34.23, corespondenta in arpa este: 23.34.226.193.in-addr.arpa).

Procesul de rezolvare a unei cereri de rezolvare inversa este asemanator cu cel de rezolvare normala: cererea este trimisa la arpa, de aici la in-addr, iar de aici, mai departe, conform numerelor indicate de cei 4 bytes ai unei adrese IP. Cand se ajunge la adresa, se gaseste numele domeniului care este trimis inapoi la client pentru autentificare.


Titlu



Copyright Dico Valentin 2000