|
Chiar daca pare simplu, mecanismul de adresare prin numar este de utilitate practica redusa, utilizatorii preferand nume, care pot fi tinute minte usor. Este important de notat ca numele reprezinta un corespondent al adreselor numerice, oferind utilizatorilor o forma mai convenabila de adresare. Este, de asemenea, important de stiut ca un sistem de nume este folosit in aceeasi maniera cu o carte de telefon: cunoscand numele unei persoane, putem afla numarul sau de telefon. in fine, asa cum numerele de telefon inscrise in carti sunt organizate pe localitati, sistemul de nume din internet este structurat pe domenii sau zone de responsabilitate. Diferenta este ca un domeniu poate contine, la randul sau, mai multe subdomenii, structura avand mai multe nivele. De aici si numele, Domain Name System - DNS, al acestei scheme folosita in internet.
DNS este un sistem de baze de date distribuite, folosite pentru translatarea numelor de host-un in adrese IP si viceversa. Server-ele DNS sunt apelate de host-uri prin intrebari UDP. Intrebarile pot fi adresate si prin TCP, dar TCP este, de obicei, rezervat transferurilor de zone, utilizate de server-ele secundare (de salvare sau backup) pentru obtinerea unor copii ale bazelor de date de la server-ele principale. Aceste transferuri de zone pot fi interceptate si exploatate de hacker-i pentru obtinerea rapida a unei liste a tintelor posibile dintr-un domeniu.
DNS memoreaza mai multe tipuri de inregistrari. O lista prescurtata a acestor inregistrari:
A - Adresa IP a host-ului;
NS - Server de nume pentru domeniu. Deleaga un subarbore unui alt server;
SO (Start of authority) - Denota inceputul subarborelui. Contine parametrii cache si de configuratie si da adresele persoanelor responsabile de zona;
MX - Schimb de posta. Denumesc host-urile care proceseaza sosirea postei pentru tinta desemnata. Tinta poate contine metacaracterul *, atunci cand o singura inregistrare MX poate redirecta posta pentru un intreg arbore;
HINFO -Tipul de host si infomatia despre sistemul de operare
CNAME - Un alias pentru numele real al host-ului;
PTR - Folosit pentru translatarea adresei IP in numele de host.
Sa consideram numele unix.cs.nps.mil, care reprezinta o adresa in internet. Aici, unix este numele unui calculator. El este gestionat de un grup, care se numeste cs (el corespunde aici cu catedra care detine calculatorul). Catedra este o parte a Universitatii Naval Postgraduate Scholl din Monterey (nps). La randul sau, nps face parte din grupul institutiilor militare din SUA (mil).
Sistemul este conceput astfel incat sa permita o gestiune distribuita a numelor. Astfel, mil se refera la toate calculatoarele din sistemul militar american, iar nps.mil la cele aflate la Universitatea de la Monterey. Gestionarul calculatoarelor din nps.mil poate atribui nume calculatoarelor sale, fara a tine cont de cele atribuite de gestionarul unei alte institutii, de exemplu mta.ro. De exemplu, daca ambii numesc cs un anumit departament, acestea pot fi diferentiate prin restul numelor de domenii, unul fiind cs.nps.mil, iar celalalt cs.mta.ro.
Pe de alta parte, este usor de gasit si adresa numerica pornind de la un nume dat. Este folosit in acest scop un serviciu similar celui de informatii telefonice, rolul serviciului de informatii este jucat de server-ele de nume. Fiecare server de nume pastreaza corespondenta 'nume - adresa-numerica' relativa la un anumit domeniu. Cand cineva foloseste un nume, calculatorul il converteste in adresa numerica, folosind una din urmatoarele scheme: face conversia directa, deoarece numele apartine unui domeniu de care el este responsabil; stie corespondenta deoarece a mai folosit recent numele; stie cum sa gaseasca corespondenta; de exemplu, pentru adresa nodului ux.cso.uiuc.edu, comunica cu un server de nume special (radacina) si afla adresa server-ului responsabil de domeniul edu; comunica apoi cu acesta si afla adresa server-ului responsabil cu domeniul uiuc; comunica apoi cu acesta si gaseste server-ul responsabil cu cso; in fine, comunica cu acesta si afla adresa calculatorului ux.