Anteprima
Vedrai una selezione di 10 pagine su 169
Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 1 Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 2
Anteprima di 10 pagg. su 169.
Scarica il documento per vederlo tutto.
Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 6
Anteprima di 10 pagg. su 169.
Scarica il documento per vederlo tutto.
Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 11
Anteprima di 10 pagg. su 169.
Scarica il documento per vederlo tutto.
Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 16
Anteprima di 10 pagg. su 169.
Scarica il documento per vederlo tutto.
Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 21
Anteprima di 10 pagg. su 169.
Scarica il documento per vederlo tutto.
Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 26
Anteprima di 10 pagg. su 169.
Scarica il documento per vederlo tutto.
Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 31
Anteprima di 10 pagg. su 169.
Scarica il documento per vederlo tutto.
Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 36
Anteprima di 10 pagg. su 169.
Scarica il documento per vederlo tutto.
Riassunto esame Reti Informatiche, prof. Anastasi, libro consigliato "Reti di calcolatori. Un approccio top-down" Pag. 41
1 su 169
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Indirizzo IP e servizi forniti da DNS

Un indirizzo IP consiste di 4 byte (32 bit) e presenta una rigida struttura gerarchica. Ha una forma del tipo 121.7.106.83, in cui ogni punto separa uno dei byte espressi con un numero decimale compreso tra 0 e 255. Un indirizzo IP è gerarchico perché, leggendolo da sinistra a destra, otteniamo informazioni sempre più specifiche sulla collocazione dell'host in Internet (ossia sulla sua appartenenza a quale rete all'interno della rete di reti).

I servizi forniti da DNS sono fondamentali per conciliare l'approccio mnemonico dei nomi degli host preferito dalle persone con l'approccio gerarchico degli indirizzi IP preferito dai router. Il DNS è un database che si occupa di tradurre i nomi degli host nei loro indirizzi IP.

Il DNS (Domain Name System) è un sistema distribuito implementato in una gerarchia di server DNS e utilizza un protocollo a livello di applicazione che consente agli host di interrogare il database.

I server DNS sono generalmente macchine UNIX che eseguono un software chiamato BIND (Berkley Internet Name Domain). Il protocollo DNS utilizza UDP e la porta 53. DNS viene comunemente utilizzato da altri protocolli a livello di applicazione per tradurre i nomi di host forniti dall'utente in indirizzi IP.

Oltre alla traduzione degli hostname in indirizzi IP, DNS mette a disposizione altri importanti servizi:

  • Host aliasing: Un host dal nome complicato può avere uno o più sinonimi (alias). Gli alias, se presenti, sono generalmente più facili da ricordare rispetto agli hostname canonici. Il DNS può essere invocato da un'applicazione per ottenere l'hostname canonico di un sinonimo, così come l'indirizzo IP dell'host.
  • Mail server aliasing: Per ovvi motivi è fortemente

Auspicabile che gli indirizzi di posta elettronica siano facili da ricordare. Tuttavia, l'hostname del server di posta è molto più complicato e assai meno facile da ricordare rispetto a quello che utilizziamo. Un'applicazione di posta può invocare il DNS per ottenere il nome canonico di un sinonimo fornito, così come l'indirizzo IP dell'host.

Distribuzione del carico di rete (load distribution). Il DNS viene anche utilizzato per distribuire il carico tra server replicati, per esempio dei web server. I siti con molto traffico vengono replicati su più server, e ciascuno di questi viene eseguito su un host diverso e presenta un indirizzo IP differente. Nel caso di web server replicati, va dunque associato a ogni hostname canonico un insieme di indirizzi IP. Il database contiene questo insieme di indirizzi. Quando i client effettuano una query DNS per un nome associato a un insieme di indirizzi, il server risponde con l'intero.

Un primo approccio potrebbe essere quello di utilizzare un DNS server contenente tutte le corrispondenze. In questo schema centralizzato, i client dirigono semplicemente tutte le richieste al singolo server e quest'ultimo risponde loro direttamente.

Sebbene tale semplicità progettuale sia attraente, sarebbe inappropriata per l'attuale Internet, dotata di un vasto e sempre crescente numero di host.

Tra i problemi legati a uno schema centralizzato ricordiamo i seguenti:

  • Un solo punto di fallimento. Se il DNS server si guasta, ne soffre l'intera Internet.
  • Volume di traffico. Un singolo DNS server dovrebbe gestire tutte le richieste (per tutte le richieste HTTP e i messaggi di posta elettronica generati da centinaia di milioni di host).
  • Database centralizzato distante. Un singolo DNS server non può essere vicino a tutti i client. Ciò
può causare ritardi significativi per le richieste provenienti dai client più lontani. - Manutenzione. Il singolo DNS server dovrebbe contenere record relativi a tutti gli host di Internet. Non solo tale database centralizzato sarebbe vasto, ma dovrebbe essere aggiornato frequentemente per tener conto di ogni nuovo host. Un database distribuito e gerarchico. Per trattare il problema della scalabilità, il DNS utilizza un grande numero di server, organizzati in maniera gerarchica e distribuiti nel mondo. Nessun DNS server ha le corrispondenze per tutti gli host in Internet, che sono invece distribuite tra tutti i DNS server. In prima approssimazione esistono tre classi di DNS server organizzati in una gerarchia: - Root server. In Internet esistono 13 root server, la maggior parte dei quali sono situati in Nord America. Sebbene abbiamo fatto riferimento a ciascuno dei 13 root server come se si trattasse di un server singolo, ai fini di sicurezza e affidabilità ciascuno diessi è in realtà un cluster di server replicati. Top-level domain (TLD) server. Questi server si occupano dei domini di primo livello quali com, org, net, edu e gov, e di tutti i domini di primo livello relativi ai vari paesi, come uk, fr, ca e it (CCTLD – country code top level domain). DNS server autoritativo. Ogni organizzazione dotata di host pubblicamente accessibili tramite Internet deve fornire record DNS pubblicamente accessibili che associno i nomi di tali host a indirizzi IP. Il DNS server dell'organizzazione ospita questi record. Per comprendere l'interazione tra le classi, supponiamo che un client DNS voglia determinare l'indirizzo IP relativo all'hostname www.amazon.com. Per fare ciò, il client dapprima contatta uno dei root server, che già restituisce uno o più indirizzi IP relativi al server TLD per il dominio com. Quindi contatta uno di questi server TLD, che gli restituisce uno o più indirizzi IP del server autoritativo per il dominio amazon.com.server autoritativo per amazon.com. Infine, contatta uno dei server autoritativi per amazon.com, che gli restituisce l'indirizzo IP dell'hostname www.amazon.com. Esiste un altro importante tipo di DNS, detto DNS server locale, che non appartiene strettamente all'gerarchia di server, ma che è comunque centrale nell'architettura DNS. Ciascun ISP ha un DNS server locale (detto anche default name server). Quando un host si connette a un ISP, quest'ultimo gli fornisce un indirizzo IP tratto da uno o più dei suoi DNS server locali, generalmente tramite DHCP. Quando un host effettua una richiesta DNS, la query viene inviata al DNS server locale, che opera da proxy e inoltra la query alla gerarchia dei DNS server. Consideriamo un semplice esempio. Supponiamo che l'host xxx.iet.unipi.it voglia l'indirizzo IP di gaia.cs.umass.edu. L'host dapprima invia un messaggio di richiesta DNS al proprio server locale; se questo ha già la risposta

Nella sua memoria può rispondere immediatamente alla richiesta, altrimenti segue l'approccio classico. Il server locale inoltra il messaggio di richiesta a un root server. Quest'ultimo prende nota del suffisso edu e restituisce al server locale un elenco di indirizzi IP per i TLD server responsabili di edu. Il server locale rinvia quindi il messaggio di richiesta a uno di questi ultimi. Il TLD server prende nota del suffisso umass.edu e risponde con l'indirizzo IP del server autoritativo per l'Università del Massachussets. Infine, il DNS server locale rimanda il messaggio di richiesta direttamente a dns.umass.edu, che risponde con l'indirizzo IP di gaia.cs.umass.edu.

L'approccio che abbiamo visto viene detto iterativo: la stessa richiesta viene reiterata più volte dal server DNS locale. C'è anche un altro tipo di approccio, quello ricorsivo, con il quale il server DNS locale invia una sola richiesta che viene poi inoltrata dai

Quale approccio è migliore?

Non c'è una risposta unica, perché dipende dal criterio di valutazione. L'approccio ricorsivo è migliore dal punto di vista del DNS server locale, quello iterativo è invece migliore per il core di Internet.

DNS Caching

Fino a questo momento abbiamo ignorato il DNS caching, una caratteristica di fondamentale importanza. In verità, il DNS sfrutta in modo estensivo il caching per migliorare le prestazioni di ritardo e per ridurre il numero di messaggi DNS che "rimbalzano" su Internet.

L'idea alla base del DNS caching è molto semplice. In una concatenazione di richieste, il DNS server che riceve una risposta DNS può mettere in cache le informazioni contenute. Le entrate della cache "scadono" (scompaiono) dopo qualche tempo, tipicamente 2 giorni.

I server TLD vengono tipicamente salvati nella cache dei server locali, per questo i root server non

Vengono visitati così spesso.

2.5.3 Record e messaggi DNS

I server che implementano il database distribuito di DNS memorizzano i cosiddetti record di risorsa (RR, resource record), tra cui quelli che forniscono le corrispondenze tra nomi e indirizzi.

Ogni messaggio di risposta DNS trasporta uno o più record di risorse.

Un record di risorsa contiene i seguenti campi: (Name, Value, Type, TTL).

Il TTL è il time to live, ossia il tempo residuo di vita di un record e determina quando una risorsa vada rimossa dalla cache.

Il significato di TTL dipende da:

  • Se Type=A, allora Name è il nome dell'host e Value è il suo indirizzo IP. Pertanto, un record di tipo A fornisce la corrispondenza tra hostname standard e indirizzo IP.
  • Se Type=NS, allora Name è un dominio e Value è l'hostname del DNS server autoritativo che sa come ottenere gli indirizzi IP degli host nel dominio. Questo record viene usato per instradare le richieste DNS successive.
alla prima nella concatenazione delle query.- Se allora rappresenta il nome canonico dell'host per l'alias QuestoType=CNAME, Value Name.record può fornire agli host richiedenti il nome canonico relativo a un hostname.40 - Se allora è il nome canonico di un mail server che ha alias Questo tipo diType=MX, Value Name.record consente agli hostname dei mail server di avere alias semplici. Notiamo che, usando il recorduna società può avere gli stessi alias per il proprio server di posta e per uno dei propriMX,altri server.Se un DNS server è autoritativo per un certo hostname, allora conterrà un record di tipo per l'hostname.Anche se il server non fosse autoritativo, potrebbe tuttavia contenere un record di tipo nella propria cache.Se un server non è quello autoritativo per un certo hostname, allora conterrà un record di tipo per ilNSdominio che include l'hostname, e conterrà anche un record di tipo che

Il testo fornito non è chiaro. Se stai cercando di ottenere l'indirizzo IP del server DNS, potresti utilizzare il comando "nslookup" o "dig" da un prompt dei comandi o da un terminale. Ad esempio:

Per Windows:

nslookup nome_server_dns

Per Linux o macOS:

dig nome_server_dns

Sostituisci "nome_server_dns" con il nome del server DNS di cui desideri conoscere l'indirizzo IP.

Dettagli
Publisher
A.A. 2019-2020
169 pagine
2 download
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher f.baldi di informazioni apprese con la frequenza delle lezioni di Reti informatiche e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Pisa o del prof Anastasi Giuseppe.