Sistemi di elaborazione dell'informazione / Reti

ARP nelle inter-reti

ARP (Address Resolution Protocol), protocollo di risoluzione degli Indirizzi sulle inter-reti IP. Ogni pacchetto IP contiene un indirizzo a 32 bit di destinazione e l'indirizzo del mittente. Questi indirizzi a 32 bit devono essere associati agli indirizzi hardware a 48 bit che identificano univocamente le schede di rete. Questo significa che se un computer vuole inviare un pacchetto IP ad un altro computer, deve fornire l'indirizzo hardware del computer di destinazione come parte dell'intestazione del frame che contiene il pacchetto. Oltre all'indirizzo hardware di destinazione, il frame ha anche un'intestazione con l'indirizzo hardware del mittente. È in questo modo che il computer di destinazione può rispondere al mittente, dopo aver ricevuto ed elaborato il frame ed il pacchetto che contiene. L'ARP (Address Resolution Protocol, Protocollo di Risoluzione degli Indirizzi) trasforma gli indirizzi IP in indirizzi hardware. Ricordiamo che se il computer mittente e il destinatario si trovano sulla stessa sottorete, c'è una semplice corrispondenza tra indirizzi a 32 e indirizzi a 48 bit, che può essere calcolata dal protocollo ARP grazie ad apposite tabelle; altrimenti, occorre inviare il pacchetto TCP/IP a un router, inserendolo in un frame con l'indirizzo a 48 bit del router stesso. Una volta giunto al router, il pacchetto viene inoltrato al computer di destinazione oppure a un altro router. Quando un pacchetto viene inviato da un indirizzo IP a un altro, questo trasferimento viene chiamato hop. Solo dopo che il pacchetto è stato instradato alla rete corretta, l'indirizzo IP di destinazione può essere tradotto nell'indirizzo hardware del computer destinatario. La prima funzione di un server ARP è annunciare il proprio indirizzo IP e il corrispondente indirizzo hardware agli altri computer presenti sulla stessa rete locale. Questo procedimento previene la duplicazione degli indirizzi IP: ogni computer, invia un broadcast ARP alla rete locale che annuncia il suo indirizzo hardware e il corrispondente indirizzo IP. Se un altro computer sulla rete sta già usando quell'indirizzo IP, risponde al nuovo venuto negandogli l'utilizzo dell'indirizzo IP. Il computer che ha trasgredito visualizza un messaggio di errore e rinuncia a inizializzare il software di rete TCP/IP. La risoluzione degli indirizzi di destinazione IP remoti segue la stessa procedura di quelli locali. L'unica differenza è che, per ogni hop successivo, ARP deve tradurre in indirizzo hardware l'indirizzo IP del router d'inoltro e non direttamente quello del destinatario. Questo router poi inoltrerà il pacchetto al computer di destinazione o a un altro router. In altri termini, l'indirizzo IP di destinazione di un pacchetto è quello del primo router posto sul percorso verso il destinatario cui il pacchetto deve essere inviato. ARP deve fornire l'indirizzo hardware del primo router del percorso. Quando il pacchetto IP raggiunge il router d'inoltro, l'indirizzo IP di destinazione sul pacchetto viene modificato dal servizio ARP presente sul router in modo che diventi l'indirizzo IP della destinazione o del router successivo attraverso cui il pacchetto deve passare. Per eseguire la traduzione, il router esaminerà anzitutto la propria cache ARP; se la ricerca va a vuoto, invierà una richiesta ARP per sapere l'indirizzo hardware dell'hop successivo. Quindi il computer mittente non deve conoscere l'indirizzo hardware della destinazione remota, ma solo l'indirizzo hardware del primo router a cui il pacchetto deve essere inviato. Se il percorso non è conosciuto il pacchetto IP sarà inviato al gateway predefinito impostato per il computer sorgente. L’ algoritmo di funzionamento del protocollo ARP in una inter-rete potrebbe essere:

  1. Il computer mittente controlla la sua tabella d'instradamento locale cercando la rete di destinazione. Se la rete di destinazione è presente, la tabella d'instradamento specifica l'indirizzo IP del router d'inoltro. Allo stesso modo, la tabella d'instradamento presente sul primo router su questo percorso conterrà l'indirizzo IP del router successivo. Se la rete di destinazione non è presente nella tabella d'instradamento locale, il computer mittente invia il pacchetto IP al suo gateway predefinito, se configurato.

  2. Il computer mittente controlla la sua cache ARP per verificare se contiene una traduzione valida per l'indirizzo IP del router d'inoltro o del gateway predefinito.

  3. Se non viene trovata alcuna traduzione valida nella cache ARP, il computer sorgente invia un broadcast ARP per sapere l'indirizzo hardware del router. Il router risponde direttamente al mittente specificando il suo indirizzo IP e il suo indirizzo hardware.

  4. Il computer mittente mette l'indirizzo hardware del router nell'intestazione del frame, vi inserisce il pacchetto IP e lo invia al router.

  5. Quando il router riceve il frame, calcola l'indirizzo IP di destinazione dell'hop successivo dalla tabella d'instradamento locale. Se la tabella non contiene indicazioni utili, utilizza il gateway predefinito. Il router, poi, modifica l'indirizzo hardware di destinazione del frame nell'indirizzo hardware dell'hop seguente, controllando la propria cache ARP e, se l'indirizzo hardware non vi è presente, trasmettendo una richiesta ARP.






















































Tutto quanto riportato in questa pagina è a puro scopo informativo personale. Se non ti trovi in accordo con quanto riportato nella pagina, vuoi fare delle precisazioni, vuoi fare delle aggiunte o hai delle proposte e dei consigli da dare, puoi farlo mandando un email. Ogni indicazione è fondamentale per la continua crescita del sito.