ARP (Address Resolution Protocol)
Il routing Indirizzo IP della stazione mittente conosce: - il proprio indirizzo (IP e MAC) - la netmask (cioè la subnet) - l indirizzo IP del default gateway, il router a cui riferirsi per trasmettere fuori dalla propria subnet Se destinatario All interno della subnet: nessun problema: stessa rete fisica solo traduzione in indirizzo MAC (ARP) Tra subnet: mediante router (tabelle e protocolli di routing) traduzione in indirizzo MAC (ARP) del router attenzione: nel gergo IP i router sono spesso chiamati gateway!
ARP Per essere spedito a una stazione (default gateway o stazione destinataria) il pacchetto IP deve: Essere inserito in un frame del livello data link e essere inviato sul mezzo fisico Il frame deve contenere l indirizzo fisico (MAC) del default gateway o della stazione destinataria La risoluzione dell indirizzo IP in un indirizzo MAC viene effettuata tramite il protocollo ARP (Address Resolution Protocol) (Il protocollo ARP quindi viene utilizzato per ottenere l indirizzo MAC o del gateway o della stazione di destinazione)
ARP (2) Stazione destinazione all interno della subnet: Stazione mittente manda in broadcast sulla rete un pacchetto con l indirizzo IP della stazione destinataria. Tutte le stazioni lo ricevono ma solo quella che ha quell indirizzo IP risponde inviando il proprio indirizzo MAC Stazione destinazione in un altra subnet: Stessa modalità (invio richiesta ARP sulla rete) e il dafault gateway risponde inviando il proprio indirizzo MAC
ARP (3) Varie ottimizzazioni per rendere più efficiente ARP - Il risultato delle richieste ARP (Indirizzo MAC della stazione destinataria) viene memorizzato nella cache ARP in modo da evitare in futuro l invio di altri pacchetti - Per evitare che il destinatario debba a sua volta usare il protocollo ARP per rispondere, il mittente può includere nel proprio pacchetto ARP il suo indirizzo IP e MAC e il destinatario può memorizzarli nella sua cache ARP - Tutte le stazioni che ricevono l invio in broadcast del pacchetto possono memorizzare nella propria cache ARP l indirizzo IP e MAC della stazione mittente
ARP (4) Sicurezza La stazione mittente si fida che la risposta arrivi dal legittimo destinatario e identifica quell indirizzo IP con il l indirizzo MAC che ha ricevuto Problema Configurazione abusiva di un indirizzo IP su un host collegato alla subnet corretta (che è possibile se l indirizzo è inutilizzato o il legittimo propietario è spento) Conseguenza Se un host risponde ad una ARP-request, non è detto che quell host sia effettivamente il client (o in alcuni casi anche il server) al quale volevamo rivolgerci, ma sicuramente è fisicamente collegato alla rete locale giusta. Nonostante questo, l indirizzamento IP viene utilizzato per autenticare gli utenti.
ARP (5) Utilizzo Il comando per visualizzare la cache nei sistemi Windows e Mac è: arp -a Per esempio il comando eseguito su Windows restituirà un risultato simile a questo:
RARP RARP (Reverse Address Resolution Protocol): procedimento inverso al protocollo ARP Usato per risalire all indirizzo IP conoscendo l indirizzo fisico MAC
DNS (Domain Name System)
DNS In una rete che utilizza il TCP/IP ogni stazione è identificata da un indirizzo IP Al posto degli indirizzi IP si possono usare dei nomi DNS (Domain Name System) è un sistema di risoluzione dei nomi usato per associare a indirizzi IP dei nomi Il servizio è realizzato tramite un database distribuito L operazione di convertire un nome in un indirizzo è detta risoluzione DNS L operazione di convertire un indirizzo IP in nome è detta risoluzione inversa Motivazione: La possibilità di attribuire un nome facile da memorizzare a un server (esempio: ad un sito www) facilita gli utenti. Per questo il DNS è fondamentale per la diffusione di Internet.
DNS (2) Nomi di dominio - Il DNS usa un sistema di denominazione con una struttura gerarchica (ad albero), suddiviso in domini e ogni dominio può contenere sottodomini - I nomi sono composti da 2 parti: nome host e nome dominio - I nomi delle stazioni possono essere duplicati purchè siano univoci all interno di un dominio - Parte più importante è la prima partendo da destra, detta dominio di massimo livello (TLD), per esempio.it Un dominio di secondo livello consiste in due parti, per esempio wikipedia.org e ogni ulteriore elemento specifica un ulteriore suddivisone - Nomi di massimo livello gestiti dall InterNIC che delega l amministrazione di ogni dominio ad altre autorità (in Italia NIC)
DNS (3) Client e server DNS Il DNS utilizza un database distribuito. Sistema di tipo client/server - Ogni dominio gestisce dei server (name server) che mantengono la parte del database relativa al dominio In ogni dominio posso esserci diversi tipi di server dei nomi: - Primari: aggiornati e modificati dagli amministratori del dominio - Secondari: ricevono informazioni da altri server - Master: forniscono informazioni ad altri server - I client, o risolutori, interrogano i name server per la risoluzione dei nomi I risolutori usano il protocollo UDP per comunicare (più velocemente) con il server DNS - Se richiesta relativa a un dominio gestito dal server, il server restituisce le informazioni - Se dominio non è gestito dal server, è necessario ricorrere ad altri server (gestione interrogazione in modo ricorsivo o iterativo)
DNS (4) Interrogazione ricorsiva: - Server invia un interrogazione al TLD del dominio richiesto - TLD interroga i suoi sottodomini finchè non trova il nome richiesto - I dati richiesti tornano indietro un passo per volta fino al server iniziale - Il client ottiene l indirizzo IP richiesto Interrogazione iterativa - Server che non ha informazioni fornisce al client un altro server di riferimento che ne sa piu di lui - Client interroga il nuovo server - Questo processo continua finchè non si trova il server in possesso del nome I server usano un cache in cui inseriscono le informazioni relative alle interrogazioni che hanno risolto, per velocizzare le richieste successive
DNS (5) Database DNS contiene per ciascun dominio un insieme di descrittori di risorse. Il più comune è il record che contiene l indirizzo IP di un host (risorsa di tipa A). Quando un client invia a un server DNS una richiesta, ciò che ottiene in risposta sono i descrittori di risorse attribuiti al dominio.
DNS (6) TIPO SIGNIFICATO VALORE SOA Inizio di autorità Indirizzo posta amministratore A Indirizzo IP dell host Intero 32 bit MX NS CNAME PTR Nome del server di posta Nome di un name server per quel dominio Alias per un indirizzo IP Alias per un indirizzo IP Nome host Nome host Nome dominio Nome dominio HINFO Descrizione di host Stringa ASCII TXT Testo a disposizione Stringa ASCII
DNS (7) Il client che interroga il server si aspetta: - Di ottenere i corretti descrittori di risorse - Un messaggio di errore se il nome richiesto non esiste Manipolazione delle risposte: il server può eliminare alcuni descrittori di risorse e restituire un indirizzo IP non corretto Perché? - protezione da abusi: (es siti pericolosi a causa di malware) - censura: siti che si vogliono rendere inaccessibili per decisione (del gestore della rete o di un autorità pubblica) - redirezione degli errori (simile a quello che fa google)
DNS (8) Restrizioni - Ogni parte del nome non può superare i 63 caratteri - Nome complessivo non può superare i 255 caratteri - Sottoinsieme di caratteri ASCII per evitare caratteri che non tutte le tastiere hanno Utilizzo Un nome di dominio (es it.wikipedia.org) può essere - Parte di un URL (es http://it.wikipedia.org/wiki/treno) - Parte di un indirizzo e-mail (es apache@it.wikipedia.org) - Molti nomi di dominio utilizzati per server web preceduti dalla stringa di caratteri www
DDNS DNS non permette aggiornamenti dinamici e ogni modifica al database deve essere effettuata manualmente DDNS (DNS dinamico) - Evoluzione sistema DNS - Host che cambia indirizzo IP può comunicarlo al DDNS
Prodotto da: Cocchi Nicolò V Mercurio 2009/2010