Domain Name System Inidirizzi IP e Nomi di Dominio Gestione dello
by user
Comments
Transcript
Domain Name System Inidirizzi IP e Nomi di Dominio Gestione dello
Inidirizzi IP e Nomi di Dominio I semestre 03/04 Indirizzo IP: stringa di 32 bit Domain Name System 11000000 00101001 11011010 00000001 192.41.218.1 Prof. Vincenzo Auletta Facile da manipolare per un computer Difficile da ricordare per una persona Nome di dominio: stringa di caratteri [email protected] http://www.dia.unisa.it/professori/auletta/ Facile da ricordare per una persona difficile da manipolare per un computer E’ possibile associare nomi a indirizzi IP Università degli studi di Salerno Laurea in Informatica 1 Gestione dello Spazio dei Nomi Spazio dei Nomi Piatto Si deve garantire che ogni nome mnenmonico Una lista di nomi senza una particolare struttura identifichi univocamente un host si fissa una politica di gestione dello spazio dei nomi un’autorità garantisce l’applicazione della politica Due possibili soluzioni Una funzione associa ogni nome univocamente ad un indirizzo IP soluzione semplice ma con problemi spazio dei nomi piatto (flat) spazio dei nomi gerarchico 2 l’associazione deve essere non ambigua e non necessariamente 1-a-1 serve un’applicazione che effettui le conversioni 3 macchina1 macchina2 pippo router 192.41.218.1 192.41.218.2 18.12.222.3 164.1.1.1 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 Spazio dei Nomi Gerarchico Idea della Struttura Gerarchica Lo spazio dei nomi viene diviso in zone dette domini Struttura di un’azienda per ogni dominio viene definita un’autorità di dominio tabella Il direttore generale ha piena responsabilità ma l’autorità centrale si occupa solo di coordinare le autorità di zona (dominio) ogni autorità di dominio è delegata a gestire l’assegnazione dei nomi della sua zona ed effettuare le corrispondenze tra indirizzi e nomi ogni dominio può essere diviso in sottodomini affidati ad autorità di sottodominio Direttore generale Vari reparti, ognuno con un capo reparto Consente la decentralizzazione della gestione della garantisce ad ogni reparto autonomia nomina un capo per ogni reparto il capo reparto ha la responsabilità del suo reparto e può prendere decisioni autonome le relazioni tra i reparti sono gestite dal direttore generale le autorità di dominio sono autonome 4 lo stesso nome può essere usato in domini diversi 5 Struttura dei Nomi Gerarchici DNS Un nome gerarchico è formato da vari campi, Il Domain Name System implementa uno spazio detti etichette dei nomi gerarchici per le interreti TCP/IP le etichette sono separate da punti Ogni etichetta è assegnata da un’autorità ed identifica una zona Il DNS provvede a l’autorità garantisce che nella sua zona quel nome è unico Es. dia.unisa.it 6 utilizzato su Internet basato su un database distribuito it è unico a livello globale unisa è unico nel dominio it dia è unico nel dominio unisa.it 7 specificare la sintassi dei nomi e le regole per delegare l’autorità sulle zone implementare il sistema di calcolo distribuito per convertire nomi in indirizzi e viceversa Regole Sintattiche Esempio L’intero spazio dei nomi è rappresentato come Il nome ustica.dia.unisa.it. identifica l’indirizzo 192.41.218.37 una zona senza nome Le etichette dei vari livelli gerarchici sono separate con un “.” Il “.” rappresenta il livello più alto gestito dall’ICANN “it” rappresenta tutti i domini italiani Non c’è differenza fra maiuscole e minuscole “unisa” rappresenta i nomi per l’università di Salerno I livelli gerarchici sono ordinati da destra a sinistra l’autorità di it delega dei responsabili per la gestione dei nomi sotto il dominio unisa.it “dia” rappresenta i nomi per il dipartimento di il primo livello in genere è omesso Informatica ed Applicazioni l’autorità di unisa.it delega dei responsabili per la gestione dei nomi sotto il dominio dia.unisa.it 9 “ustica” è il nome di un host fissato dall’autorità di dia.unisa.it 8 Struttura Gerarchica del DNS Domini Top Level L’autorità centrale ha individuato un insieme di domini di Autorità centrale responsabile per la delegazione dei top-level com edu org it primo livello Autorità italiana per i nomi sotto il dominio .it mit Autorità locale responsabile per i nomi sotto il dominio unisa.it Autorità locale per il dominio dia.unisa.it 10 L’autorità centrale delega dei responsabili per la gestione dei nomi sotto il dominio “it” unisa dia virgilio dmi www 11 individuati su base geografica o in base alla funzione COM EDU GOV MIL NET ORG INT IT,US,UK,DE,RU Organizzazioni commerciali Istituzioni didattiche Istituzioni statali (americane) Gruppi militari (americani) Centri di supporto di Internet Altre organizzazioni Organizzazioni internazionali Codici di nazione (due lettere) Nuovi Domini Top Level Struttura dei Top Level Domain Recentemente sono stati introdotti nuovi domini Ogni dominio di primo livello è gestito secondo di primo livello regole proprie necessari per soddisfare esigenze commerciali e risolvere problemi di esaurimento dei nomi Alcuni domini geografici sono ripartiti secondo Nuovi domini 12 BIZ INFO COOP AERO MUSEUM NAME EU attività commerciali siti informativi siti di cooperative attività aerospaziali musei siti personali codice dell’Unione Europea uno schema simile a quello di primo livello ac.uk ac.il co.uk università inglesi università israeliane organizzazioni commerciali inglesi 13 Name Server Struttura Gerarchica dei Name Server La risoluzione dei nomi è affidata ad un I name server possono essere classificati secondo l’albero dei domini sistema distribuito I membri del sistema sono detti name server ogni applicazione deve contattare un name server per risolvere un nome vari modi server due name server collegati nell’albero si conoscono e si scambiano informazioni i name server collegati possono comunicare in Ogni autorità deve avere almeno un name 14 cambiano le regole ed i costi di registrazione gestisce la risoluzione dei nomi per quel dominio un’autorità è totalmente responsabile del funzionamento dei suoi name server possono risiedere sullo stesso host o essere collegati tramite un’interrete le relazioni nell’albero sono logiche e non fisiche I name server associati alla radice dell’albero sono detti root name server 15 per ogni nome conoscono un name server in grado di convertire quel nome Root Name Server Zone di Autorità elenco dei root name servers Il sottoalbero di domini gestito da un name 16 . . . . . . . . . . . . . server costituisce la sua zona di autorità per ottenere una zona di autorità un’organizzazione deve soddisfare alcuni vincoli fissati dall’autorità centrale ottenuto con il comando dig 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s 4d18h27m25s IN NS IN NS IN NS IN NS IN NS IN NS IN NS IN NS IN NS IN NS IN NS IN NS IN NS I.ROOT-SERVERS.NET. E.ROOT-SERVERS.NET. D.ROOT-SERVERS.NET. A.ROOT-SERVERS.NET. H.ROOT-SERVERS.NET. C.ROOT-SERVERS.NET. G.ROOT-SERVERS.NET. F.ROOT-SERVERS.NET. B.ROOT-SERVERS.NET. J.ROOT-SERVERS.NET. K.ROOT-SERVERS.NET. L.ROOT-SERVERS.NET. M.ROOT-SERVERS.NET. 17 Name Server per .it e .unisa.it it. it. it. it. it. it. it. it. 1D 1D 1D 1D 1D 1D 1D 1D IN NS IN NS IN NS IN NS IN NS IN NS IN NS IN NS un name server primario ed uno di backup Tipi di Nomi Il DNS consente di incorporare nello stesso nameserver.cnr.it. server2.infn.it. ns2.psi.net. dns2.iunet.it. dns2.it.net. ns.ripe.net. dns.nic.it. ns.eu.net. sistema diverse gerarchie di nomi Ad ogni elemento denominato memorizzato nel sistema è associato un tipo 18 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 supportare tutti i protocolli standard per le interrogazioni e le risposte dal DNS conoscere almeno un root name server conoscere un name server per ciascuno dei suoi sottodomini avere almeno due name server attivi che non hanno punti di guasto comuni Host Casella postale Un utente Quando si interroga il DNS si deve specificare che tipo di informazione si sta cercando e la famiglia di protocolli da utilizzare 19 Per default si assume che si stanno cercano i nomi degli host e che si usano i protocolli TCP/IP Risoluzione di un Nome Individuazione del Name Server la comunicazione con il name server è gestita Non esiste per gli host un metodo standard per dal resolver individuare un name server sulla rete locale il resolver fa parte dell’applicazione ed è invocato prima di contattare il livello di trasporto TCP e UDP non hanno nessuna relazione con i nomi di dominio Es. un utente su A lancia il comando ftp B A richiede al name server name server server FTP S B su S l’indirizzo di B S risponde con l’indirizzo A invia un messaggio FTP 20 all’indirizzo di B In ambiente Linux gli indirizzi dei name server sono memorizzati in /etc/resolv.conf A 21 client FTP specifica fino a 3 name server in ordine di preferenza specifica una lista di suffissi per il completamento degli indirizzi Es. nameserver 192.41.218.1 domain dia.unisa.it Completamento degli Indirizzi Modalità di Risoluzione Il name server accetta solo richieste per nomi Il name server può utilizzare due diverse modalità per rispondere ad una interrogazione completamente qualificati specificano le etichette di tutti i livelli a partire dal root level Il resolver permette all’utente di specificare prova ad estenderli completamente qualificati aggiunge al nome configurazione i per suffissi ottenere modalità ricorsiva: se non conosce la risposta interroga altri name server e poi passa la risposta al client usata dai name server locali nomi parziali 22 in genere il nome del name server è memorizzato in un file di configurazione oppure prelevato da un server DHCP il name server si trova sulla porta 53 (sia UDP che TCP) nomi modalità iterativa: se non conosce la risposta passa al client l’indirizzo di un altro name server usata dai name server di livello superiore specificati Es. ftp udsab Æ ftp udsab.dia.unisa.it. nel file di Il client sceglie la modalità di risposta 23 setta un flag nel messaggio di richiesta Funzionamento del DNS Esempio di Risoluzione Name server per . L’applicazione interroga il name server locale . se il nome appartiene alla sua zona di autorità il name server locale risponde direttamente Name server per it il name server locale interroga un root name fr Name server locale server ottiene in risposta il nome di un name server che ha l’autorità sul dominio di primo livello del nome richiesto Name server per unisa.it il name server locale interroga il name server di 24 ottiene in risposta il nome di un name server di secondo livello ricorsivamente fino alla risoluzione del nome 25 dmi www.dia.unisa .it Formato dei Messaggi Ogni name server mantiene in una cache tutte 0 le corrispondenze tra nomi e indirizzi di cui viene a conoscenza dia libero Resolver Cache unisa Name server per dia.unisa.it primo livello it IDENTIFICATION nell’esempio il name server locale mette in cache i name server di it, unisa.it e dia.unisa.it una richiesta per www.dmi.unisa.it viene risolta direttamente dal name server locale 1 6 PARAMETER NUMBER OF QUESTIONS NUMBER OF ANSWERS NUMBER OF AUTHORITIES NUMBER OF ADDITIONAL 3 1 QUESTION SECTION ANSWER SECTION ogni corrispondenza viene mantenuta nella cache per un periodo fissato 26 il tempo di validità è fissato dal name server che ha l’autorità su quel nome nel messaggio inviato agli altri name server per default il timeout è 2 giorni AUTHORITY SECTION ADDITIONAL INFORMATION SECTION 27 ogni messaggio consente di specificare più richieste e risposte Parametri Formato della Question Section le risposte alle richieste PARAMETER: contiene vari flag per specificare il tipo di operazione richiesta 28 QUERY DOMAIN NAME QUERY TYPE richiesta/risposta corrispondenza indirizzo/nome o viceversa messaggio troncato risposta proveniente dalla autorità o indiretta modalità ricorsiva disponibile modalità ricorsiva richiesta contiene il nome da risolvere, rappresentato come sequenza di caratteri di lunghezza variabile Es. dia.unisa.it Æ 3 d i a 5 u n i s a 2 i t 0 contenuti nelle quattro sezioni del messaggio QUERY TYPE: specifica il tipo di informazione richiesta QUERY CLASS: specifica la classe di indirizzi 29 Formato della Answer Section Tipi degli Oggetti 3 1 1 6 Il DNS può essere utilizzato per implementare un qualsiasi spazio gerarchico dei nomi Può implementare corrispondenze arbitrarie RESOURCE DOMAIN NAME TYPE CLASS TIME TO LIVE RESOURCE DATA LENGTH RESOURCE DATA TIME TO LIVE: tempo di validità della risposta RESOURCE DATA: contiene la risposta del 30 formata da vari record di risorse stesso formato per le altre due sezioni es. corrispondenze tra nomi e indirizzi IP e tra nomi e caselle di posta Il tipo di un oggetto definisce il tipo di primi tre campi uguali alla question section server QUERY CLASS QUERY DOMAIN NAME: gli altri campi specificano quanti record sono 0 3 1 1 6 0 IDENTIFICATION: consente di far corrispondere corrispondenza a cui si riferisce name 31 esistono circa 20 tipi di oggetti e ne vengono introdotti continuamente di nuovi Principali Tipi 32 Esempio di Utilizzo dei Tipi Richiesta di tipo A per ustica.dia.unisa.it indirizzo di un host A puntatore PTR CNAME nome canonico indirizzo IP MX mail exchanger nome dell’host che agisce come mail exchanger per il dominio Richiesta di tipo MX per ustica.dia.unisa.it HINFO CPU e SO nome della CPU e del sistema operativo Richiesta di tipo NS per ustica.dia.unisa.it MINFO NS mailbox info informazioni su una mailbox name server nome del name server che ha l’autorità sul dominio SOA start of authority specifica la zona di l’autorità nome di un dominio Richiesta di tipo PTR per 192.41.218.1 nome principale di un dominio udsab.dia.unisa.it (nome associato all’indirizzo) udsab.dia.unisa.it (mail exchanger per dia.unisa.it) capri.dia.unisa.it (name server che ha l’autorità su dia.unisa.it) Richiesta di tipo SOA per capri.dia.unisa.it 33 dia.unisa.it (zona di autorità di capri.dia.unisa.it) Formato Compresso dei Nomi Interrogazioni Inverse I messaggi di risposta del name server Utilizzata per recuperare il nome associato ad contengono anche la query originaria un indirizzo IP i messaggi non possono essere più lunghi di 512 byte la risposta è troncata e il flag corrispondente è settato Per risparmiare spazio i nomi sono compressi significativi) il puntatore ha i primi due bit a 1 utilizzata da alcuni server per verificare la correttezza delle informazioni ottenute dal client Implementata come la ricerca di un nome la prima occorrenza è scritta normalmente le occorrenze successive sono sostituite da un puntatore alla prima occorrenza l’indirizzo del puntatore è scritto nel byte precedente il nome tutti gli indirizzi IP sono rappresentati come nomi nel dominio in-addr.arpa Es. 192.41.218.1 Æ 1.218.41.192.in-addr.arpa I root name server mantengono un database di al posto della dimensione dell’etichetta (6 bit meno 34 192.41.218.37 (indirizzo IP associato al nome) 35 tutti gli indirizzi IP validi e dei name server che li possono risolvere Interazione con il DNS – 1 Interazione con il DNS – 2 Esistono diverse applicazioni che consentono di auletta@ustica:~> host -a udsab Trying domain "dia.unisa.it" The following answer is not verified as authentic by the server: udsab.dia.unisa.it 172800 IN MX 10 capri.dia.unisa.it udsab.dia.unisa.it 172800 IN HINFO DEC Alpha 4000/720 udsab.dia.unisa.it 172800 IN A 192.41.218.1 For authoritative answers, see: dia.unisa.it 172800 IN NS capri.dia.unisa.it dia.unisa.it 172800 IN NS odissea.dia.unisa.it dia.unisa.it 172800 IN NS server2.garr.net dia.unisa.it 172800 IN NS ns.unisa.it Additional information: capri.dia.unisa.it 172800 IN A 192.41.218.10 odissea.dia.unisa.it 1200 IN A 193.205.162.6 server2.garr.net 95562 IN A 131.154.1.11 ns.unisa.it 172800 IN A 193.205.160.3 interagire con il DNS sotto Linux: nslookup (obsoleto), host, dig auletta@ustica:~> nslookup udsab Server: capri.dia.unisa.it Address: 192.41.218.10 Name: udsab.dia.unisa.it Address: 192.41.218.1 36 auletta@ustica:~> host udsab udsab.dia.unisa.it has address 192.41.218.1 udsab.dia.unisa.it mail is handled (pri=10) by capri.dia.unisa.it 37 OSF_1V.3.2