Summary

Lezione 6 su DNS (Domain Name System) per studenti universitari. Il documento spiega i concetti fondamentali di DNS, come i nomi simbolici, la gerarchia dei server DNS, la risoluzione dei nomi, e il caching, e fornisce esempi.

Full Transcript

Domain Name System: DNS Nomi simbolici Gerarchia dei nomi Gerarchia dei server DNS Risoluzione dei nomi Caching e abbreviazioni Descrittori di risorsa Nomi simbolici Tutte le applicazioni Internet usano indirizzi IP – IP assegna agli host indirizzi a 32-bit (es....

Domain Name System: DNS Nomi simbolici Gerarchia dei nomi Gerarchia dei server DNS Risoluzione dei nomi Caching e abbreviazioni Descrittori di risorsa Nomi simbolici Tutte le applicazioni Internet usano indirizzi IP – IP assegna agli host indirizzi a 32-bit (es. 193.204.187.146) o 128-bit (es. 2001:0db8:0000:0000:0000:ff00:0042:8329) – Gerarchici (da sx a dx, forniscono informazioni sulla posizione di un host in una sottorete di Internet) – Indirizzi binari facili da gestire per i calcolatori ma difficili da ricordare per l’uomo Necessità di usare nomi al posto di numeri: es. www.eurecom.fr – hostname più facili da ricordare ma… – danno poche informazioni sulla posizione in Internet – hanno lunghezza variabile – resta il problema della conversione tra nomi simbolici e indirizzi IP Soluzione più semplice: – file hosts in locale – ogni host ha un nome unico ed esiste un’unica tabella di conversione tra nomi e indirizzi IP: non è scalabile Soluzione adottata (dal 1983): – sistema di nomi gerarchico e ripartito in domini: es. parnas.di.uniba.it – Domain Name System (DNS): protocollo applicativo (RFC 1034/5) implementato come database distribuito 2 Funzionalità DNS Resolution (DNS query) – Traduzione hostname in indirizzo IP – Traduzione indirizzo IP in hostname Host aliasing – Host possono avere un nome canonico (e.g.,relay1.west- coast.enterprise.com) e uno o più alias facili da memorizzare (e.g., www.enterprise.com, enterprise.com) Mailserver aliasing – Stesso principio, il mailserver di un’azienda deve essere facile da ricordare (e.g., pop.gmail.com, smtp.gmail.com) Load distribution – Distribuzione del carico tra server replicati – Utile per siti con alto traffico (e.g., amazon.com, facebook.com) – A ogni hostname canonico sono associati diversi IP, uno per ciascun server replicato – Nel risolvere il nome canonico, DNS ruota automaticamente l’IP da restituire 3 Gerarchia dei nomi Schema di denominazione gerarchico e ripartito in domini: es. parnas.di.uniba.it Il nome alla destra (TLD) o dominio di primo livello (top-level domain) indica una nazione (es. it, fr, jp,...) o un tipo di organizzazione (com, org, mil, edu, gov, net); è assegnato da ICANN (Internet Corporation for Assigned Names and Numbers) Il nome successivo a sinistra e’ richiesto dall’organizzazione che (es. uniba e’ l'Università di Bari): pieno controllo su tutti i sottonomi in quel dominio Il nome successivo a sinistra può indicare una ulteriore suddivisione (es. di e’ il Dipartimento di Informatica): delega del controllo su tutti i sottonomi in quel dominio Non c’è limite al numero di sottodomini o livelli 4 Gerarchia dei server DNS Server root Partizionamento della Server TLD root gerarchia dei nomi in zone gestite da uno o più name it server Ogni name server conosce i – nomi/indirizzi all’interno della propria zona uniba poliba unina – i server dei propri immediati sottodomini Server autoritativi – il server radice di dm Quattro tipi di name server – Root – TLD Server locale Esempi: – Autoritative (default name server) www.uniba.it – Local www.dm.uniba.it www.di.uniba.it 1000+ root server gestiti da 12 organizzazioni 6 Risoluzione dei nomi Ogni computer ha una routine name resolver: es. in Unix gethostbyname(), al contrario gethostbyaddress() Il resolver spedisce una richiesta DNS al server locale Se un name server locale non può risolvere un indirizzo, esso contatta il name server radice – name server radice (root) ridondanti e sparsi per il mondo – Ogni name server radice ha gli indirizzi dei name server per tutti i nomi di primo livello (TLD) Tipi di richiesta: – ricorsiva (dammi la risposta) – iterativa (dammi la risposta o un riferimento ad un altro server) Come risposta, un name server può: – inoltrare la richiesta a un altro server (solo ricorsiva) – restituire un puntatore a un altro server da interrogare (solo iterat) – restituire la risposta completa con indirizzo richiesto (ricors/iterat) 7 Risoluzione iterativa dei nomi Scenario non realistico: Ben 4 richieste DNS (8 messaggi) per una root risoluzione, troppa latenza! server 2. care.cs.umd.edu cs.umd.edu 3. TLD 1. parnas.di.uniba.it name 4. name name server 5. server resolver locale 6. 10. 193.204.187.146 7. uniba.it 8. name user 9. server authoritative Il name resolver fa solo query ricorsive name In genere il name server locale accetta query ricorsive solo se il name resolver appartiene alla stessa rete server di.uniba.it Risoluzione ricorsiva dei nomi Scenario non realistico: troppo traffico, root server e TLD server non accettano query ricorsive root server 2. care.cs.umd.edu 8. 3. cs.umd.edu 9. 1. parnas.di.uniba.it TLD name name name server resolver server locale 10. 193.204.187.146 7. 4. uniba.it name user server 6. 5. authoritative name server di.uniba.it Risoluzione mista dei nomi root server 2. care.cs.umd.edu cs.umd.edu 3. 1. parnas.di.uniba.it name TLD 4. name server name resolver 5. locale server 10. 193.204.187.146 6. 9. uniba.it user name server 8. 7. I root server sono configurati per essere non-ricorsivi. authoritative Anche i TLD server sono configurati per essere non-ricorsivi Al name server uniba.it posso fare richiesta ricorsiva invece name server di.uniba.it DNS caching La risoluzione dei nomi può essere costosa – ogni risoluzione comporta una richiesta DNS – ogni nome non locale coinvolge un root server I name server configurati per la ricorsione usano il caching per ridurre il numero di richieste DNS non locali e latenza – la cache e’ una lista locale di nomi/indirizzi risolti recentemente – a ogni entrata e’ associato un time-to-live (TTL) comunicato dal server con autorità sul nome 11 Risoluzione tramite cache Solo i server configurati per essere ricorsivi hanno una cache root server care.cs.umd.edu cs.umd.edu 1. parnas.di.uniba.it name TLD name server name resolver locale server 10. 193.204.187.146 uniba.it user cache name server cache Le risposte provenienti da una cache sono dette non-authoritative authoritative name 12 server di.uniba.it Descrittori di risorsa (Resource Record) Ogni name server gestisce una collezione di descrittori di risorsa: Name e’ nome simbolico dell’host o dominio a cui si associa un value Il significato di Name e Value dipende dal tipo (Type) del descrittore – Type A: Value e’ l’indirizzo IPv4 corrispondente, Name è hostname associato – Type AAAA: Value e’ l’indirizzo IPv6 corrispondente, Name è hostname associato – Type MX: Value e’ il nome canonico del mail server (es. gaia.di.uniba.it) che accetta messaggi per il dominio specificato indicato da Name (ossia di.uniba.it) – Type CNAME: Value e’ il nome canonico per l’host (es. rubrum.di.uniba.it) e Name è il suo sinonimo (es. www.di.uniba.it) – Type NS: Value è il nome del name server autoritativo cui inoltrare le richieste per il dominio (es. foo.com) indicato da Name TTL: tempo di validità di un descrittore di risorsa (tipicamente 48h) 13 Header 14 Inserimento record DNS Supponiamo di fondare la società Network Utopia e di voler riservare il dominio networkutopia.com 1. Registrare a pagamento il dominio presso un registrar (www.internic.net lista registrar accreditati da ICANN) 2. Il registrar richiede nomi e indirizzi IP di due server DNS autoritativi (es. dns1.networkutopia.com e dns2.networkutopia con indirizzi 1.1.1.1 e 1.1.1.2) 3. Il registrar aggiunge i seguenti record nel TLD server di.com – (dns1.networkutopia.com, 1.1.1.1, A) – (dns2.networkutopia.com, 1.1.1.2, A) – (networkutopia.com dns1.networkutopia.com, NS) – (networkutopia.com dns2.networkutopia.com, NS) 4. Se abbiamo anche il sito web (www.networkutopia.com) e la posta elettronica, dovremo assicurarci che i DNS server autoritativi contengano i record: – (www.networkutopia.com, 1.1.1.3, A) – (mail.networkutopia.com, networkutopia.com, MX) – (mail.networkutopia.com, 1.1.1.4, A) 15 Trace di una query DNS con dig dig +trace +nodnssec www.facebook.com ; DiG 9.10.6 +trace +nodnssec www.facebook.com ;; global options: +cmd. 55548 IN NS m.root-servers.net.. 55548 IN NS b.root-servers.net.. 55548 IN NS c.root-servers.net.. 55548 IN NS d.root-servers.net. …. 55548 IN NS l.root-servers.net. ;; Received 239 bytes from 8.8.8.8#53(8.8.8.8) in 24 ms com. 172800 IN NS m.gtld-servers.net. com. 172800 IN NS f.gtld-servers.net. com. 172800 IN NS e.gtld-servers.net. com. 172800 IN NS j.gtld-servers.net. com. 172800 IN NS b.gtld-servers.net. …. com. 172800 IN NS g.gtld-servers.net. ;; Received 844 bytes from 199.9.14.201#53(b.root-servers.net) in 185 ms facebook.com. 172800 IN NS a.ns.facebook.com. facebook.com. 172800 IN NS b.ns.facebook.com. facebook.com. 172800 IN NS c.ns.facebook.com. facebook.com. 172800 IN NS d.ns.facebook.com. ;; Received 288 bytes from 192.52.178.30#53(k.gtld-servers.net) in 38 ms www.facebook.com. 3600 IN CNAME star-mini.c10r.facebook.com. ;; (a.ns.facebook.com) in 20 Received 74 bytes from 129.134.30.12#53ms 16

Use Quizgecko on...
Browser
Browser