IP Time to Live (TTL) and Hop Limit Basics | Cerca per titolo, autore, parola chiave | ||||||||
IP Time to Live (TTL) and Hop Limit Basics by Steven Iveson. Per essere certi che i pacchetti di dati IP abbiano una vita limitata in rete, nell'header di un pacchetto IP esiste un campo di 8 bit, chiamato Time to Live (IPv4) o Hop Limit (IPv6), in cui viene specificato il massimo numero di hop (normalmente, router) che il pacchetto dati può attraversare, per arrivare a destinazione. Ogni volta che il pacchetto di dati raggiungerà un hop (normalmente, un router), il valore del campo verrà diminuito di uno, prima di reinstradare il pacchetto dati all'hop successivo. Quando il valore del campo sarà uno, il pacchetto di dati verrà distrutto dal router che lo ha appena ricevuto, poichè, detraendo uno dal suo valore attuale, il valore finale sarebbe zero. Visto che il campo TTL è di otto bit, il valore massimo che può esprimere è 255 (11111111 in binario). Se un router riceve un pacchetto di dati IPv6 con Hop Limit pari a zero e non destinato a lui, lo distruggerà. Se un router (o una qualsiasi periferica IPv6) riceve un pacchetto di dati IPv6, con Hop Limit pari a zero o uno, e il router è il destinatario del pacchetto di dati (che non dovrà, quindi, essere inoltrato altrove), il router accetterà il pacchetto di dati. IPv4, su questo punto, è molto meno esplicito, sostenendo, semplicemente, che, se il campo è a zero, il datagramma deve essere distrutto. Quando un router elimina un pacchetto di dati con TTL o Hop Limit a zero o a uno, può inviare (anche se non è obbligatorio) un messaggio di errore ICMP al computer di origine:
I programmi traceroute (in Linux) e tracert (in Windows), si affidano al campo TTL o Hop Limit per le loro operazioni, poichè inviano pacchetti di dati, verso il computer di destinazione, inserendo un valore TTL sempre crescente, a partire da 1. Ricevuto il pacchetto di dati con il valore TTL a uno, il primo router, o hop, (probabilmente il gateway di default per il computer di origine) decrementerà il valore di uno, portandolo a zero. Questo comporterà, da parte del router ricevente, la distruzione del pacchetto di dati e l'invio di un messaggio ICMP di errore, del tipo Time Exceeded, al computer di origine. A questo punto, i pacchetti di dati verranno reinviati, dal computer di origine, con un valore TTL pari a due, poi pari a tre, e così via, fino ad arrivare al computer di destinazione. I messaggi di errore ICMP, inviati al computer di origine da ciascun router intermedio, ed l'indirizzo IP di ciascuno dei router che li ha inviati, rivelano la sequenza dei router utilizzati per arrivare al computer di destinazione. I pacchetti inviati dal computer di origine per identificare i router intermedi sono o pacchetti UDP, con porta di destinazione compresa tra 33434 e 33534, con messaggio ICMP (Echo Request) o TCP (SYN), oppure, come nel caso di Windows, pacchetti ICMP Echo Request. Per ciascun valore TTL, vengono inviati, di default, tre pacchetti di dati.
|
|||||||||
IP Time to Live (TTL) and Hop Limit Basics | Disclaimer: questo è un link a contenuti ospitati su server esterni. |