10
1 1 Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport # Internet: hosts/routers: IP address (32 bit): l’indirizzo dei datagrams “nome dei datagrams”, e.g., gaia.cs.umass.edu Come viene definita l’associazione IP addresses/name ? Domain Name System: Database distribuito realizzatùto mediante una gerarchia di name servers application-layer protocol host, routers, name servers comunicano tra di loro per risolvere la traduzione nome/indirizzo Una funzione di base del funzionamento di internet è realizzata da un protocollo delle applicazioni. 3 Nomi ed indirizzi È raro che i programmi si riferiscano a host, mailbox o altre risorse di rete mediante il loro indirizzo assoluto: invece di usare numeri si usano stringhe ASCII [email protected] www.di.unipi.it Risulta dunque necessario un meccanismo di conversione delle stringhe ASCII in indirizzi di rete 4 Esempio Hosts cheltenham.cs.princeton.edu 192.12.69.17 80:23:A8:33:5B:9F Files /usr/llp/tmp/foo (server, fileid) Users GianLuigi Ferrari [email protected]

Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

1

1

Domain Name System

GianLuigi Ferrari

2

DNS: Domain Name System

Persone: diversi codici diidentificazione:

CF, SSN, Passport #

Internet: hosts/routers:IP address (32 bit):l’indirizzo dei datagrams“nome dei datagrams”,e.g., gaia.cs.umass.edu

Come viene definital’associazione IPaddresses/name ?

Domain Name System:Database distribuitorealizzatùto mediante unagerarchia di name servers

application-layer protocolhost, routers, nameservers comunicano tra diloro per risolvere latraduzione nome/indirizzoUna funzione di basedel funzionamento diinternet è realizzatada un protocollo delleapplicazioni.

3

Nomi ed indirizzi

È raro che i programmi si riferiscano a host,mailbox o altre risorse di rete mediante illoro indirizzo assoluto: invece di usarenumeri si usano stringhe ASCII

[email protected]

www.di.unipi.it

Risulta dunque necessario un meccanismo diconversione delle stringhe ASCII in indirizzidi rete

4

Esempio

Hostscheltenham.cs.princeton.edu 192.12.69.17

80:23:A8:33:5B:9F

Files/usr/llp/tmp/foo (server, fileid)

UsersGianLuigi [email protected]

Page 2: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

2

5

EsempioMailboxes

ServicesLa stampante piu’ vicina all’utente

Nameserver

Mailprogram

User

TCP

IP

2

cs.princeton.edu

192.12.69.53

user @ cs.princeton.edu

1

192.12.69.5 4

192.12.69.5 5

6

Un po’ di storia

Ai tempi di ARPANET esisteva in ogni sistemaopertivo un unico file, hosts.txt, che elencava tutti glihost e i loro indirizzi IP. Ogni notte tutti gli host dellarete lo copiavano dal sito in cui era mantenutoQuando la rete comprendeva solo qualche centinaiodi grosse macchine questo approccio funzionavabene; quando la rete crebbe venne inventato ilservizio DNS (Domain Name Server), definito neidocumenti RFC 1034 e 1035

7

Lo spazio dei nomi

Ogni entità in Internet possiede un nomeunico a livello mondiale: la gestionedell’insieme di tali nomi, che è vasto ed incontinua modifica, è un problema complessoLo spazio dei nomi Internet è suddiviso incentinaia di domini radice; ogni dominio sidivide in sottodomini, che a loro voltapossono essere partizionatiI domini radice possono essere generici onazionali

8

I Domini

I domini generici sono com (commerciale),edu (istituzioni educative), gov (il governofederale USA), int (organismi internazionali osovranazionali), mil (le forze armate USA),net (fornitori di servizi di rete), e org(organizzazioni senza scopo di lucro).I domini nazionali sono uno per nazione(definiti dallo standard ISO 3166)

Page 3: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

3

9

DNS

Gerarchia di naming

10

Gerarchie di naming

Il nome di un dominio è composto dal camminoinverso dalla foglia fino alla radice (anonima); icomponenti del cammino sono separati da punti.I nomi dei domini sono insensibili allemaiuscole/minuscoleI nomi all’interno dei cammini possono essere lunghial più 63 caratteri, mentre un cammino non puòsuperare complessivamente i 255 caratteriEsempio: il dominio del dipartimento di informaticaa Pisa è di.unipi.it

11

Interrogare il DNSIl programma nslookup permette diinterrogare il DNS

Per convertire un nome di dominio in numero IPPer convertire un numero IP in nome di dominio

La funzione nslookup è presente in tutti isistemi operativi (es Windows 2000)Il sito Web www.infobear.com/nslookup.shtmlpermette di interrogare via Web il DNSIl sito www.nic.it/RA/database/database.htmlaccede al registro della Registration Authorityitaliana

12

Page 4: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

4

13

Name Servers

In teoria un solo name server potrebbecontenere l’intero database DNS mondiale; inpratica, questo server sarebbe cosìsovraccarico da essere inservibile. Inoltre, semai si guastasse, l’intera Internet sarebbebloccata.Nota: Nel 2000 c’erano solo 13 root nameservers:10 negli USA, uno a Londra, uno aStoccolma, uno a Tokyowww.icann.org/committees/dns-root/y2k-statement.htm

14

ZoneLo spazio dei nomi DNS è suddiviso in zone nonsovrapposte (cioè senza intersezione); normalmenteuna zona avrà un name server principale, che leggeinformazioni da un file sul proprio disco, ed uno o piùname server secondari, che prendono le loroinformazioni dal name server principalePer migliorare l’affidabilità, è possibile che alcuni serverdi zona si trovino al di fuori della zona stessa.Dove siano posti i confini di una zona è affaredell’amministratore della zona. Questa decisione è ingran parte basata su quanti name server si vogliono edove vanno collocati.

15

Name ServersPartizione della gerarchia in zone

edu com

princeton … mit

cs ee

ux01 ux04

physics

cisco … yahoo nasa … nsf arpa … navy acm … ieee

gov mil org net uk fr

Rootname server

Princetonname server

Cisconame server

CSname server

EEname server

Ogni zona può avere due o piu’

name servers

16

DNS name serversNessun server memorizzal’associazione name-to-IPaddress per tutta Internet

local name servers: ogni ISP ha un local(default) name server

Primo passo: query al localname server

authoritative name server:host: memorizza l’indirizzoIP ed il nome del sistemaEffettua la traduzionename/IP address translation

DNS centralizzatoPunto di fallimento globaleVolume di traffico elevatoDatabase remotomaintenance

Non scala!!!

Page 5: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

5

17

DNS

Quando un programma deve trasformare unnome in un indirizzo IP chiama unaprocedura detta resolver, passandole il nomecome parametro di ingresso.Il resolver interroga un server DNS locale,che cerca il nome nelle sue tabelle erestituisce l’indirizzo al resolver, che a suavolta lo trasmette al programma chiamante(usando tale indirizzo IP il programma puòaprire una connessione di rete con ladestinazione)

18

Root DNS Servers

com DNS servers org DNS servers edu DNS servers

poly.edu

DNS servers

umass.edu

DNS serversyahoo.com

DNS serversamazon.com

DNS servers

pbs.org

DNS servers

Distributed, HierarchicalDatabase

Client: IP for www.amazon.com?;Client queries a root server to find com DNS serverClient queries com DNS server to get amazon.comDNS serverClient queries amazon.com DNS server to get IPaddress for www.amazon.com

19

DNS: Root name serversContattati dai name server locali root name server:

Interagiscono con il name server di autorità (se nonpossono risolvere direttamente ilo nome)Ottengono il mappingRestituiscono il risultato

b USC-ISI Marina del Rey, CA

l ICANN Marina del Rey, CA

e NASA Mt View, CA

f Internet Software C. PaloAlto, CA

i NORDUnet Stockholm

k RIPE London

m WIDE Tokyo

a NSI Herndon, VA

c PSInet Herndon, VA

d U Maryland College Park, MD

g DISA Vienna, VA

h ARL Aberdeen, MDj NSI (TBD) Herndon, VA

13 root name servers

worldwide

20

TLD and Authoritative ServersTop-level domain (TLD) servers: sono Iserver in carico del naming per com, org,net, edu, etc, e per i country domains (it,uk, fr, ca, etc).

Authoritative DNS servers: DNS serverdei provider

Page 6: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

6

21

Local Name Server

Ogni ISP (residenziale -- company,universita’) al il proprio server

“default name server”

Una query al DNS viene inviata al DNSlocale

Sostanzialmente un proxy per la gerarchia

22

requesting hostcis.poly.edu

gaia.cs.umass.edu

root DNS server

local DNS serverdns.poly.edu

1

23

4

5

6

authoritative DNS serverdns.cs.umass.edu

78

TLD DNS server

ExampleHost localecis.poly.edu wantseffettua una queryper determinareIP address digaia.cs.umass.edu

23

requesting hostcis.poly.edu

gaia.cs.umass.edu

root DNS server

local DNS serverdns.poly.edu

1

2

45

6

authoritative DNS serverdns.cs.umass.edu

7

8

TLD DNS server

3

Recursive queries

24

DNS: queriesrecursive query:

Meccanismo ditrasmissione dellequery tra i variname server

iterated query:server restituisce ilnome del nameserver dacontattare perrisolvere la query“I don’t know thisname, but ask thisserver”

requesting hostsurf.eurecom.fr

gaia.cs.umass.edu

root name server

local name serverdns.eurecom.fr

1

23

4

5 6

authoritative name serverdns.cs.umass.edu

intermediate name serverdns.umass.edu

7

8

iterated query

Page 7: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

7

25

DNS: cachingUn generico name server può effetttuareuna operazione di caching per memorizzarei risultati delle query

Elementi della cache diventano “vecchi”Meccanismi per update/notify sono in fasedi progetto

RFC 2136http://www.ietf.org/html.charters/dnsind-charter.html

26

DNS recordsDNS: distributed db che memorizza resource records (RR)

Type=NSname is domain (e.g.foo.com)value is IP address ofauthoritative name serverfor this domain

RR format: (name, value, type,ttl)

Type=Aname is hostname

value is IP address

Type=CNAMEname è un alias di un nome

“canonico”

www.ibm.com èservereast.backup2.ibm.com

Value è il nome

canonico

Type=MXvalue is hostname of

mailserver associated withname

27

RR Type A

Associazione standard tra nome ed unindirizzo IP

(a.b.c.d, 145.37.93.126, A)

28

RR: Type NS

Associazione tra il nome di un dominioe l’indirizzo dell’host che e’ in grado diottenere gli indirizzi IP di hostall’interno di quel dominio

(a.b, dns.a.b, NS)

Page 8: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

8

29

RR: Type =CNAME

Permette di associare un indirizzocanonico ad un alias

(foo.com, a.b.foo.com, CNAME)

30

RR: Type = MX

Permette di avere l’indirizzo dell’host diun mail server

(foo.com, mailserver.a.foo.com, MX)

31

Root Server

(princeton.edu, cit.princeton.edu, NS, IN)

(cit.princeton.edu, 128.196.128.233, A, IN)

(cisco.com, thumper.cisco.com, NS, IN)

(thumper.ciscoe.com, 128.96.32.20, A, IN)

32

Princeton Server(cs.princeton.edu, optima.cs.princeton.edu, NS, IN)

(optima.cs.princeton.edu, 192.12.69.5, A, IN)

(ee.princeton.edu, helios.ee.princeton.edu, NS, IN)

(helios.ee.princeton.edu, 128.196.28.166, A, IN)

(jupiter.physics.princeton.edu, 128.196.4.1, A, IN)

(saturn.physics.princeton.edu, 128.196.4.2, A, IN)

(mars.physics.princeton.edu, 128.196.4.3, A, IN)

(venus.physics.princeton.edu, 128.196.4.4, A, IN)

Page 9: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

9

33

CS Server

(cs.princeton.edu, optima.cs.princeton.edu, MX, IN)

(cheltenham.cs.princeton.edu, 192.12.69.60, A, IN)

(che.cs.princeton.edu, cheltenham.cs.princeton.edu,

CNAME, IN)

(optima.cs.princeton.edu, 192.12.69.5, A, IN)

(opt.cs.princeton.edu, optima.cs.princeton.edu,

CNAME, IN)

(baskerville.cs.princeton.edu, 192.12.69.35, A, IN)

(bas.cs.princeton.edu,

baskerville.cs.princeton.edu, CNAME, IN)

34

DNS protocol, messages

DNS protocol : query / repy messages, Identico message format

msg headeridentification: 16 bit # for query,

repy to query uses same #

flags:

query or reply

recursion desired

recursion available

reply is authoritative

35

DNS protocol, messages

Name, type fields

for a query

RRs in reponse

to query

records for

authoritative servers

additional “helpful”

info that may be used

36

DNS

Protocollo di trasporto: UDPPorta: 53

Page 10: Domain Name Systemgiangi/CORSI/I2/INF2PDF/DNS.pdf · Domain Name System GianLuigi Ferrari 2 DNS: Domain Name System Persone: diversi codici di identificazione: CF, SSN, Passport #

10

37

Inserting records into DNSStartup “Network Utopia”

Registrare il nome networkuptopia.comNeed to provide registrar with names and IPaddresses of your authoritative name server(primary and secondary)Registrar inserts two RRs into the com TLD server:

(networkutopia.com,dns1.networkutopia.com, NS)

(dns1.networkutopia.com, 212.212.212.1,A)

Put in authoritative server Type A record forwww.networkuptopia.com and Type MX recordfor networkutopia.com