Sunteți pe pagina 1din 6

Protocolul DNS

- RFC 1034,1035;
- utilizat în maparea numelor staţiilor cu adresele IP a acestora.
- nivelul Aplicatie;
- fisierul host.txt a fost folosit initial pentru procesul de mapare;
- realizarea functiei de “name resolution” ( rezolvarea numelor in adrese IP),
protocolul DNS foloseste un spatiu de identificatori. Notiuni de baza:
o spatiu de nume DNS;
o servere DNS;
o clienti DNS;

Spatiu de nume DNS este format din ansamblu de nume DNS( unic in Internet)

Parte din spatiu de nume DNS

FQDN( Fully Qualified Domain Name) reprezinta un nume complet ( de la frunza pana la
radacina)
EX : mail.yahoo.com.

Spatiu de nume este format din zone( care nu trebuie sa se suprapuna).


O zona DNS poate cuprinde un intreg domeniu sau o parte, restul subdomeniilor aflandu-
se pe alte servere. Informatiile despre o zona se gasesc in fisierul zona
Un fisier zona uprinde o serie de inregistrari de tip RR.( ce durnizeaza infromatii despre
resursele zonei).

Pentru fiecare zona trebuie sa existe un server de nume primar( numit si autoritar) si unul
sau mai multe servere secundare( replici).Acestea preiau informatiile de la serverul
primar.
Parte din spatiu de nume DNS prezentand impartirea zonelor DNS

Serverele DNS pot fi :


- server master( primar) pentru o zona este unic( SOA);
- server slave( secundar) reprezinta copii ale serverului master( Read – only).
Serverul slave poate functiona ca server autorativ pentru zona( daca pe serverul
slave se afla fisierul zona) . Procesul prin care se realizeaza copierea fisierului
zona de pe serverul master pe serverul slave se numeste transfer de zona

Clientul DNS este reprezentat prin resolver-ul DNS la nivelul sistemului de operare.
Resolveru-ul primeste cereri din partea aplicatiilor si are rolul de a transforma numele de
domeniu in adresa IP. Acest lucru se realizeaza prin interogari ( query ) trimise de catre
resolver catre serverul DNS configurat in sistem.
In cazul in care rezolutia nu s-a efectuat, serverul DNS va intoarce o eroare.

Pentru a realize rezoltia, serverul acceseaza sursele de informatie de care dispune in


urmatoare ordine:
- fiserul zona pe care il gazduieste ;
- fisierul host;
- memoria cache proprie;
- alte servere;

Interogarea poate fi:


- query iterative(incrementale) ;
Clientul trimite o cerere catre server, iar acesta trebui sa raspunda imediat( fara a
contacta alte servere) fie din fisierul zona( daca este autorativ), fie din cache-ul sau.
Daca serverul nu “are” raspunsul pentru rezolutia DNS, acesta raspunde cu o
referinta( referral). Aceasta referinta reprezinta o lista de servere DNS care ar putea
realizea rezolutia DNS.
Toate interogarile sunt facute de catre resolver.
- query recursiv;
Clientul trimite o singura intrebare serverului DNS. Acesta este responsabil sa
realizeze rezolutia DNS, fie din fisierul zona, fie din cache-ul propriu, fie prin
contactarea altor servere DNS.
Severrul de nume interogheaza pe rand celelate servere.

Tipuri de RR

NS ( Name Server) : declara serverul de nume autoritar pentru acel domeniu;


A ( Address) : declara o corespondenta intre nume si IP( rezoltia directa)
PTR ( Pointer) : declara o corespondenta intre IP si nume( rezoltia inversa)
MX ( Mail Exchanger) : declara un server de mail pentru zona
CNAME( Canonical Name) : declara un alias al unei resurse.
AAAA ( Address) : declara o corespondenta intre nume si IPv6.

Rezolutii DNS
- rezolutia directa : translatarea unui nume de domeniu in IP. ( Se foloseste RR de
tip A)
- rezolutia inversa: translatarea adreselor IP in nume de domeniu( se foloseste RR
de tip PTR)

Protocolul DNS utilizeaza:


- TCP pentru transferul de zona ;
- UDP pentru interogari ;

Formatul mesajului ;

Header – contine infoematiile pentru controlul protocolului ;


Question – campul care retine “intrebarea” care se adreseaza
Answer – campul care contine raspunsul la intrebarea adresata
Authority – serverele authoritative pentru domeniul din intrebare( poate lipsi)
Additional – informatii despre RR-urile date mai sus;

Formatul Header-ului :
Identification – identificare pereche cerere-raspuns ;
QR - 0( query) / 1( reponse)
Opcode - 0( standard query)/ 1( inverse query) / 2( server status)
Rcode - codul de raspuns;
Question - interogarea ( numele si tipul de RR akl inregistrarii cautate);
Answer - raspunsul la interogarea efectuata ;
Authority - serverele autoritare pentru domeniul ( din interogare); ( compul poate
lipsi)
Additional - detalii despre inregistrari;

Servere de nume : BIND( Berkeley Intenet Name Domain)


Resolvere interactive: nslookup, host dig

Exercitiu: vizualizarea fisierului de host.txt


Windows : %SystemRoot%\system32\drivers\etc\
Linux : /etc/hosts

Exercitiu : vizualizarea serverlor DNS din cache


ipconfig /?

Exercitiu: nslookup

Commands: (identifiers are shown in uppercase, [] means optional)


NAME - print info about the host/domain NAME using default
server
NAME1 NAME2 - as above, but use NAME2 as server
help or ? - print info on common commands
set OPTION - set an option
all - print options, current server and host
[no]debug - print debugging information
[no]d2 - print exhaustive debugging information
[no]defname - append domain name to each query
[no]recurse - ask for recursive answer to query
[no]search - use domain search list
[no]vc - always use a virtual circuit
domain=NAME - set default domain name to NAME
srchlist=N1[/N2/.../N6] - set domain to N1 and search list to
N1,N2, etc.
root=NAME - set root server to NAME
retry=X - set number of retries to X
timeout=X - set initial time-out interval to X seconds
type=X - set query type (ex.
A,ANY,CNAME,MX,NS,PTR,SOA,SRV)
querytype=X - same as type
class=X - set query class (ex. IN (Internet), ANY)
[no]msxfr - use MS fast zone transfer
ixfrver=X - current version to use in IXFR transfer
request
server NAME - set default server to NAME, using current default
server
lserver NAME - set default server to NAME, using initial server
finger [USER] - finger the optional NAME at the current default host
root - set current default server to the root
ls [opt] DOMAIN [> FILE] - list addresses in DOMAIN (optional: output
to FILE)
-a - list canonical names and aliases
-d - list all records
-t TYPE - list records of the given type (e.g.
A,CNAME,MX,NS,PTR etc.)
view FILE - sort an 'ls' output file and view it with pg
exit - exit the program

Lookup
nslookup www.mta.ro
Name: www.mta.ro
Address: 193.231.21.10 // Mapare www.mta.ro - 193.231.21.10

nslookup www.google.com
Non-authoritative answer:
Name: www.l.google.com
Addresses: 74.125.77.104, 74.125.77.147, 74.125.77.99
Aliases: www.google.com

Vizualizarea diferitelor tipuri de inregistrari

nslookup –type=mx mta.ro //inregistrari MX


nslookup –type=ns mta.ro //inregistrari NS( nume DNS)

Utilizarea optiunilor debug/ d2 ofera informatii detaliate despre


interogarile effectuate.

nslookup –d2 mta.ro


Lookup norecursive si recursive

nslookup –norecursive www.doom.de //se va afisa o lista de


//servere de nume care nu vor
//mai face nici o interogare;

nslookup –recursive www.doom.de


nslookup –norecursive www.doom.de

Exercitiu: host,dig
- adresa IP a unei statii :

host google.com
dig google.com

- inregistrarea de tip MX
host –t MX google.com
dig –t MX google.com

- serverul de nume al unui domeniu


host –t NS google.com
dig –t NS google.com

S-ar putea să vă placă și