Autunno 2002 Prof. Roberto De Prisco -09: Domain Name System (Cap. 24) Università degli studi di Salerno Laurea e Diploma in Informatica Inidirizzi IP: nomi e numeri 09.2 Indirizzo IP: stringa di 32 bit 11000000.00101001.11011010.00000001 192.41.218.1 Facile da manipolare per un computer Difficile da ricordare per una persona Nomi mnemonici Facili da ricordare Non ambigui In relazione 1-a-1 con gli indirizzi IP reali 1
Spazio non gerarchico (piatto) 09.3 Soluzione Semplice Una lista di nomi senza una particolare struttura Una funzione che associa ogni nome univocamente ad un indirizzo IP macchina1 macchina2 pippo router 192.41.218.1 192.41.218.2 18.12.222.3 164.1.1.1 Problemi Gestione centralizzata La tabella di conversione deve essere nota a tutti i computer della rete Difficile da gestire e da consultare quando la rete è grande Nomi gerarchici 09.4 Decentralizzazione della gestione della tabella Delega di autorità per sottospazi del dominio dei nomi Distribuzione della responsabilità di traduzione fra nome e inidirizzo IP e viceversa Analogia: azienda Direttore generale Vari reparti, ognuno con un capo reparto Il direttore generale ha piena responsabilità, garantisce ad ogni reparto autonomia Ogni capo reparto ha responsibilità del suo reparto e può prendere decisioni 2
DNS (Domain Name System) 09.5 udsab.dia.unisa.it. I livelli gerarchici sono contrassegnati con un. L ultimo punto di solito viene omesso Non c è differenza fra maiuscole e minuscole Partendo da sinistra Il. rappresenta il livello più alto, dal quale si parte Esiste una autorità centrale responsabile it è il primo livello nel nome Rappresenta tutti i domini in Italia L autorità centrale delega dei responsabili per i nome sotto il dominio it unisa è il secondo livello nel nome Rappresenta i nomi per l università di Salerno dia è il terzo livello Rappresenta i nomi per il dipartimento di Informatica ed Applicazioni udsab è il nome di una macchina Tipi di nomi 09.6 Il DNS è abbastanza generale Più gerarchie di nomi possono essere incorporate nello stesso sistema Quindi occorre specificare a cosa si riferisce il nome che stiamo usando Host Casella postale Un utente Nella maggior parte dei casi si cercano host Per default si assume che sia un host 3
Struttura gerarchica 09.7 Autorità centrale responsabile per la delegazione dei top-level com edu org it Autorità italiana per i nomi sotto il dominio.it mit Autorità locale responsabile per i nomi sotto il dominio unisa.it unisa virgilio Autorità locale per il dominio dia.unisa.it dia dmi www Top Level 09.8 COM Organizzazioni commerciali EDU Istituzioni didattiche (americane) GOV Istituzioni statali (americane) MIL Gruppi militari (americani) NET Centri si supporto di Internet ORG Altre organizzazioni INT Organizzazioni internazionali BIZ Aziende commerciali NAME Nomi di persone IT,US,UK,DE,FR, Paesi 4
Risoluzione di un nome 09.9 Come si ottiene l indirizzo IP? C è un sistema distribuito che offre questo servizio I computer che fanno parte di questo sistema sono detti name server Ogni autorità gestisce i propri name server Quindi possono essere classificati secondo l albero dei domini In realtà un server fisico può svolgere più funzioni, quindi la relazione potrebbe non essere 1-a-1 Per ottenere la risoluzione di un nome occorre contattare un name server Root name server 09.10 Ci sono 13 root name server Questi name server sanno tutto Più precisamente sanno chi sa robdep@zaffiro:~> dig ns. [.];; ANSWER SECTION:. 4d18h27m25s IN NS I.ROOT-SERVERS.NET.. 4d18h27m25s IN NS E.ROOT-SERVERS.NET.. 4d18h27m25s IN NS D.ROOT-SERVERS.NET.. 4d18h27m25s IN NS A.ROOT-SERVERS.NET.. 4d18h27m25s IN NS H.ROOT-SERVERS.NET.. 4d18h27m25s IN NS C.ROOT-SERVERS.NET.. 4d18h27m25s IN NS G.ROOT-SERVERS.NET.. 4d18h27m25s IN NS F.ROOT-SERVERS.NET.. 4d18h27m25s IN NS B.ROOT-SERVERS.NET.. 4d18h27m25s IN NS J.ROOT-SERVERS.NET.. 4d18h27m25s IN NS K.ROOT-SERVERS.NET.. 4d18h27m25s IN NS L.ROOT-SERVERS.NET.. 4d18h27m25s IN NS M.ROOT-SERVERS.NET. 5
Name server per.it 09.11 I name server per l italia sanno tutto su domini italiani robdep@zaffiro:~> dig ns it ; <<>> DiG 8.3 <<>> ns it [..] ;; ANSWER SECTION: it. 1D IN NS nameserver.cnr.it. it. 1D IN NS server2.infn.it. it. 1D IN NS ns2.psi.net. it. 1D IN NS dns2.iunet.it. it. 1D IN NS dns2.it.net. it. 1D IN NS ns.ripe.net. it. 1D IN NS dns.nic.it. it. 1D IN NS ns.eu.net. Name server per unisa.it 09.12 I name server di unisa.it sanno tutto dei domini dell università di Salerno robdep@zaffiro:~> dig ns unisa.it ; <<>> DiG 8.3 <<>> ns it [..] ;; QUERY SECTION: ;; unisa.it, type = NS, class = IN ;; ANSWER SECTION: unisa.it. 2D IN NS capri.dia.unisa.it. unisa.it. 2D IN NS server2.garr.net. unisa.it. 2D IN NS ns.unisa.it. ;; ADDITIONAL SECTION: capri.dia.unisa.it. 2D IN A 192.41.218.10 server2.garr.net. 1h30m26s IN A 131.154.1.11 ns.unisa.it. 2D IN A 193.205.160.3 6
Name server per dia.unisa.it 09.13 Infine ci sono i name server del DIA 3 sono gli stessi per unisa.it robdep@zaffiro:~> dig ns dia.unisa.it ; <<>> DiG 8.3 <<>> ns it [..] ;; QUERY SECTION: ;; dia.unisa.it, type = NS, class = IN ;; ANSWER SECTION: dia.unisa.it. 2D IN NS ns.unisa.it. dia.unisa.it. 2D IN NS capri.dia.unisa.it. dia.unisa.it. 2D IN NS odissea.dia.unisa.it. dia.unisa.it. 2D IN NS server2.garr.net. ;; ADDITIONAL SECTION: odissea.dia.unisa.it. 20M IN A 193.205.162.6 server2.garr.net. 1h28m6s IN A 131.154.1.11 ns.unisa.it. 2D IN A 193.205.160.3 capri.dia.unisa.it. 2D IN A 192.41.218.10 Esempio di risoluzione 09.14 Name server per.. Name server locale Name server per it fr it Name server per unisa.it unisa libero Name server per dia.unisa.it dia dmi Resolver www.dia.unisa.it 7
Caching 09.15 Quando un name server risolve un nome memorizza la risoluzione Una query successiva per lo stesso nome potrà essere risolta immediatamente Nell esempio precedente il name server locale ha imparato I name server per.it I name server per unisa.it I name server per dia.unisa.it L indirizzo IP di www.dia.unisa.it Una query per www.dmi.unisa.it potrà partire dai name server di unisa.it anziché dai root name server Richieste ricorsive ed iterative 09.16 Il name server locale è ricorsivo In pratica deve preoccuparsi da fare tutte le richieste necessarie per arrivare ad una risposta da dare al client Gli altri name server sono iterativi In pratica possono rispondere indirizzando il richiedente ad un altro name server Ricorsivo: garantisce la risposta o un errore Iterativo: può rispondere con un reindirizzamento Un name server è ricorsivo o iterativo in base alla richiesta Cioè la richiesta può specificare il tipo di comportamento che il name server deve avere Il resolver solitamente è un applicazione e richiede risoluzioni ricorsive 8
Risoluzione inversa 09.17 Sappiamo come tradurre un nome in un indirizzo IP www.dia.unisa.it 192.41.218.10 Come si traduce un indirizzo IP nel corrispondente nome? La soluzione adottata dal DNS è quella di utilizzare lo stesso sistema anche per la risoluzione inversa! Un dominio speciale contiene come sottodomini tutti i possibili indirizzi IP L indirizzo IP 192.41.218.10 corrisponde al nome 10.218.41.192.in-addr.arpa Problema: mantenere coerenti la risoluzione e la risoluzione inversa Risoluzione inversa 09.18 9