Curs nr. 07 - Protocolul DNS.pdf

Embed Size (px)

Citation preview

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Regasirea Informatiilor pe WEBCurs 07: Protocolul DNS

    s.l. dr. ing. Alexandru [email protected]

    Facultatea de Automatica si Calculatoare, Iasi

    an universitar: 2014 2015

    RIWeb 2014 2015/C07: Protocolul DNS 1/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Cuprins

    1 Arhitectura generala a motoarelor de catareMotor de cautare pe WEBRobot WEB

    2 Definitie, scurt istoric, caracteristiciDefinitieScurt istoricCaracteristici principale

    3 Specificatii protocol DNSFormatul unui mesaj DNSHeader-ul unui mesaj DNSSectiunea QuestionSectiunea Answer

    4 Discutii

    RIWeb 2014 2015/C07: Protocolul DNS 2/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Motor de cautare pe WEB

    Motor de cautare pe WEB

    Figura 1: Arhitectura generala a motoarelor de cautare pe WEB [7]

    RIWeb 2014 2015/C07: Protocolul DNS 3/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Robot WEB

    Arhitectura unui robot WEB

    Figura 2: Componentele unui robot WEB (n engleza: web crawler)[7]

    RIWeb 2014 2015/C07: Protocolul DNS 4/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Definitie

    Defintie DNS

    DNS Domain Name System

    sistem de nume ierarhic utilizat n identificarea oricarei resurse (calculator,serviciu, etc.) conectate la/prin intermediul Internet sau n cadrul oricareiretele particulare;

    informatiile sunt stocate n forma unei baze de date distribuite ierarhic ;

    sistemul este supranumit coloana vertebrala a Internet-ului ;

    cel mai important rol : maparea numelor semnificative uman pesteidentificatori numerici (binari) semnificativi la nivel de echipament de retea,ntr-un mod scalabil si independent de locatia fizica efectiva a resursei.

    RIWeb 2014 2015/C07: Protocolul DNS 5/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Scurt istoric

    Scurt istoric al DNS

    1967 Nu exista!!

    1971 Peggy Karp host mnemonics RFC 226

    HOSTS.TXT tabel ce cuprindea toate resursele unei retelemapate sub forma adresa ip nume resursa;

    fiecare operator din cadrul retelei trebuia sa copie local, pe fiecarecalculator, acest fisier;

    prima versiune completa a tabelului: 1972.

    1981 Dr. David Mills concepte si facilitati necesare pentru InternetName Domains RFC 799.

    Ross Wm. Rader despre RFC 799

    RFC 799 outlined the concepts and facilities required for an InternetName Domains system that would eventually scale to facilitateaddressing of thousands of hosts.

    RIWeb 2014 2015/C07: Protocolul DNS 6/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Scurt istoric

    Scurt istoric al DNS (2)

    1982 Jon Postel & Zaw-Sing Su RFC 819 prima descriere generala aunei structuri DNS si a ceea ce ar trebui sa permita o astfel destructura la nivel de comunicatie inter-retele.

    1983 Dr. Paul Mockapetris

    RFC 882 Domain Names Concepts and Facilities (n prezent,anulat si completat de RFC 1034)

    RFC 883 Domain Names Implementation and Specification (nprezent, anulat si completat de RFC 1035)

    defineste urmatoarele notiuni fundamentale:

    Autoritate: sfera de influenta (zona/subdomeniu) asupracareia o entitate are control complet.Delegare: mecanismul prin care o entitate capata controlcomplet asupra unei sfere de influenta (zona/subdomeniu).

    RIWeb 2014 2015/C07: Protocolul DNS 7/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Caracteristici principale

    Caracteristici principale: structura

    Figura 3: Structura ierarhica a DNS

    RIWeb 2014 2015/C07: Protocolul DNS 8/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Caracteristici principale

    Caracteristici principale: rezolvarea numelor

    Figura 4: Rezolvarea numelor: etapa locala

    RIWeb 2014 2015/C07: Protocolul DNS 9/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Caracteristici principale

    Caracteristici principale: rezolvarea numelor (2)

    Figura 5: Rezolvarea numelor: etapa recursiva

    RIWeb 2014 2015/C07: Protocolul DNS 10/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Caracteristici principale

    Caracteristicile principale ale protocolului DNS

    Nivel protocol n stiva TCP/IPnivel APLICATIE (nivel 4)

    Nivel protocol n stiva OSInivel PREZENTARE (nivel 6)

    Protocol transport utilizat implicitUDP

    Port implicit53

    Tip protocolfara stare

    Schema de transfercomunicatie de tip cerere/raspuns

    Schema URIdns:

    RIWeb 2014 2015/C07: Protocolul DNS 11/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Formatul unui mesaj DNS

    Formatul unui mesaj DNS

    Cererea/raspunsul DNS

    au acelasi format unic

    Structura unui mesaj DNS

    Header Dimensiune: 12 octeti

    Informatii continute: tipul mesajului, informatii generale despremesaj, campuri ce indica numarul total de intrari cuprinse ncelelalte sectiuni ale mesajului

    Question Dimesiune: variabila

    Informatii continute: una sau mai multe ntrebari adresate unuiserver DNS

    RIWeb 2014 2015/C07: Protocolul DNS 12/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Formatul unui mesaj DNS

    Formatul unui mesaj DNS (2)

    Structura unui mesaj DNS (2)

    Answer Dimensiune: variabila

    Informatii continute: una sau mai multe nregistrari ce cuprindraspunsurile cerute n campul anterior

    Authority Dimesiune: variabila

    Informatii continute: se indica server-ele autoritare (unul sau maimulte) ce trebuie utilizate n cazul unei recursii a cererii

    Additional Dimesiune: variabila

    Informatii continute: alte informatii

    RIWeb 2014 2015/C07: Protocolul DNS 13/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Header-ul unui mesaj DNS

    Header-ul mesajului DNS

    Caracteristici generale

    structurat pe campuri semnificatia unui camp este data de entitatea carel seteaza

    Figura 6: Formatul header-ului DNS

    RIWeb 2014 2015/C07: Protocolul DNS 14/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Header-ul unui mesaj DNS

    Header-ul mesajului DNS (2)

    ID

    Dimensiune: 2 octeti (16 biti)

    Descriere: Identifier camp generat de client n momentul scrierii cererii.Este copiat de catre server n mesajul raspuns. Are rolul de a identifica lanivel de client cererile distincte transmise de acelasi client.

    QR

    Dimensiune: 1/8 octeti (1 bit)

    Descriere: Query/Response Flag diferentiaza tipul mesajului (cerere 0sau raspuns 1).

    RIWeb 2014 2015/C07: Protocolul DNS 15/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Header-ul unui mesaj DNS

    Header-ul mesajului DNS (3)

    Opcode

    Dimensiune: 1/2 octeti (4 biti)

    Descriere: Operation Code se specifica (pe partea de client, valoareafiind copiata n raspuns) tipul cererii DNS

    Valori posibile:

    0 - QUERY cerere standard1 - IQUERY cerere inversa2 - STATUS cerere asupra starii unui server3 - (rezervat) valoare rezervata, neutilizata4 - NOTIFY adaugat de RFC 1996 rolul de a solicita (din partea unuiserver autoritar) reactualizarea servere-lor subordonate)5 - UPDATE adaugat de RFC 2136 rol n implementarea DNS dinamice

    RIWeb 2014 2015/C07: Protocolul DNS 16/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Header-ul unui mesaj DNS

    Header-ul mesajului DNS (4)

    AA

    Dimensiune: 1/8 octeti (1 bit)

    Descriere: Authoritative Answer Flag camp setat de catre server pentrua indica tipul entitatii care a generat raspunsul (entitate de tip Autoritate saunu).

    TC

    Dimensiune: 1/8 octeti (1 bit)

    Descriere: Truncation Flag camp setat de catre server pentru a indicadaca mesajul a fost trunchiat sau nu.

    RD

    Dimensiune: 1/8 octeti (1 bit)

    Descriere: Recursion Desired camp setat de catre client pentru a fortaserver-ul interogat sa realizeze cereri recursive

    RIWeb 2014 2015/C07: Protocolul DNS 17/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Header-ul unui mesaj DNS

    Header-ul mesajului DNS (5)

    RA

    Dimensiune: 1/8 octeti (1 bit)

    Descriere: Recursion Available camp setat de catre server pentru aspecifica daca server-ul suporta cereri recursive sau nu.

    Z

    Dimensiune: 3/8 octeti (3 biti)

    Descriere: Zero camp rezervat 3 biti cu valoare implicita 0.

    RIWeb 2014 2015/C07: Protocolul DNS 18/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Header-ul unui mesaj DNS

    Header-ul mesajului DNS (6)

    Rcode

    Dimensiune: 1/2 octeti (4 biti)

    Descriere: Response Code campul este setat pe 0 de catre client. Serverulva seta acest camp corespunzator cu statusul cererii.

    Valori posibile:

    0 - NO ERROR1 - Format error cererea contine erori de sintaxa2 - Server Failure eroare de server3 - (rezervat) valoare rezervata, neutilizata4 - Name error numele specificat nu a fost regasit5 - Refused serverul refuza procesarea cererii6 - YX Domain exista, desi nu ar trebui, un nume n cadrul unui domeniu7 - YX RR Set exista, desi nu ar trebui, un set de nregistrari ale unei resurse8 - NX RR Set setul de nregistrari aferent unei resurse ar trebui sa existe9 - Not Auth serverul care a primit cererea nu este autoritate pe domeniu10 - Not Zone numele specificat n cerere nu exista n zona indicata

    RIWeb 2014 2015/C07: Protocolul DNS 19/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Header-ul unui mesaj DNS

    Header-ul mesajului DNS (7)

    QDCount

    Dimensiune: 2 octeti (16 biti)

    Descriere: Question Count camp setat de catre client, specifica numarulde ntrebari din cerere.

    ANCount

    Dimensiune: 2 octeti (16 biti)

    Descriere: Answer Record Count camp setat de catre server, specificanumarul de raspunsuri din cerere.

    NSCount

    Dimensiune: 2 octeti (16 biti)

    Descriere: Authority Record Count camp setat de catre server, specificanumarul de intrari corespunzatoare sectiunii Authority din mesaj.

    RIWeb 2014 2015/C07: Protocolul DNS 20/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Header-ul unui mesaj DNS

    Header-ul mesajului DNS (8)

    ARCount

    Dimensiune: 2 octeti (16 biti)

    Descriere: Additional Record Count camp setat de catre server, specificanumarul de intrari corespunzatoare sectiunii Additional din mesaj.

    RIWeb 2014 2015/C07: Protocolul DNS 21/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Sectiunea Question

    Sectiunea Question a mesajului DNS

    contine nterbarea adresata de catre client server-ului DNS

    orice mesaj DNS trebuie sa contina cel putin o nregistrare pentruaceasta sectiune.

    Figura 7: Formatul sectiunii Question

    RIWeb 2014 2015/C07: Protocolul DNS 22/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Sectiunea Question

    Sectiunea Question a mesajului DNS (2)

    Question Name

    contine numele resursei pentru care se solicita informatiile specificate n mesaj

    Exemplu

    Resursa: www.xyzindustries.com Codificarea: [3]www[13]xyzindustries[3]com[0]

    Figura 8: Codificarea campului Question Name

    RIWeb 2014 2015/C07: Protocolul DNS 23/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Sectiunea Question

    Sectiunea Question a mesajului DNS (3)

    QType Question Type

    Dimensiune: 2 octeti (16 biti)

    Rol : specifica tipul ntrebarii adresate server-ului:

    Valoare 1: se cere rezolvarea numelui transmis n cerere (obtinerea adreseiIPv4 asociata numelui);Valoare 28: similar valorii 1, dar raspunsul oferit va contine adresa IPv6 aresursei dorite.

    QClass Question Class

    Dimensiune: 2 octeti (16 biti)

    Rol : specifica, pentru resursa ceruta, clasa din care ar trebui sa faca parteraspunsul

    Daca raspunsul urmarit este adresa IP asociata unui nume, atunci acestcamp trebuie sa contina valoarea 1 (IN).

    RIWeb 2014 2015/C07: Protocolul DNS 24/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Sectiunea Answer

    Sectiunea Answer a mesajului DNS

    sectiunea Answers a unui mesaj DNS contine rezolvarea cererii client. Inmod uzual, acest raspuns este obtinut sub forma unui Resource RecordDNS (RR).

    Figura 9: Formatul unui RR DNS

    RIWeb 2014 2015/C07: Protocolul DNS 25/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Sectiunea Answer

    Structura unui Resource Record

    Name

    Dimensiune: variabila

    Contine numele resursei ce face obiectul prezentului RR. Formatul poate fi:

    o secventa de etichete ce se ncheie cu un octet cu valoarea 0 ;un pointer (Figura 10);o secventa de etichete ce se ncheie cu un pointer.

    Figura 10: Formatul unui pointer

    RIWeb 2014 2015/C07: Protocolul DNS 26/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Sectiunea Answer

    Structura unui Resource Record (2)

    Type

    Dimensiune: 2 octeti (16 biti)

    Rol : specifica tipul RR daca n cerere a fost solicitata adresa IP, atunciacest camp are valoarea 1.

    Class

    Dimensiune: 2 octeti (16 biti)

    Rol : precizeaza clasa de care apartine RR curent.

    TTL

    Dimensiune: 4 octeti (32 biti)

    Rol : specifica durata (n secunde) pentru care RR-ul inclus n raspuns poatefi retinut n cache (durata de validitate a RR-ului curent).

    RIWeb 2014 2015/C07: Protocolul DNS 27/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Sectiunea Answer

    Structura unui Resource Record (3)

    RDLenght

    Dimensiune: 2 octeti (16 biti)

    Rol : specifica lungimea n octeti a campului Rdata.

    In cazul n care raspunsul contine adresa IPv4 dorita, atunci acest camp vaavea valoarea 4.

    RData

    Dimensiune: variabila

    Rol : contine unul sau mai multe subcampuri ce prezinta informatiile doritedespre RR-ul curent.

    Subcampul Address: dimensiune 4 octeti (32 biti) adresa IP aresursei indicate.

    RIWeb 2014 2015/C07: Protocolul DNS 28/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Discutii

    Cum se pot afla numele de domenii nregistrate la o anumita adresa IP?Cum se poate implementa n mod eficient un cache DNS?

    RIWeb 2014 2015/C07: Protocolul DNS 29/ 30

  • Cuprins Arhitectura generala a motoarelor de catare Definitie, scurt istoric, caracteristici Specificatii protocol DNS Discutii Bibliografie

    Bibliografie

    1 http://en.wikipedia.org/wiki/Domain name system

    2 Ross Wm. Rader, One History of DNS, 2001

    3 http://www.rfc-archive.org/getrfc.php?rfc=226

    4 tcpipguide.com: DNS Message Processing and General Message Format

    5 http://www.zytrax.com/books/dns/ch15/

    6 http://www.networksorcery.com/enp/protocol/dns.htm

    7 Christopher D. Manning, Prabhakar Raghavan and Hinrich Schutze,Introduction to Information Retrieval, Cambridge University Press. 2008

    RIWeb 2014 2015/C07: Protocolul DNS 30/ 30

    Arhitectura generala a motoarelor de catareMotor de cautare pe WEBRobot WEB

    Definitie, scurt istoric, caracteristiciDefinitieScurt istoricCaracteristici principale

    Specificatii protocol DNSFormatul unui mesaj DNSHeader-ul unui mesaj DNSSectiunea QuestionSectiunea Answer

    Discutii