Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
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
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]
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)
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
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!!!
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
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
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)
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)
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
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