9. Traceroute Considerations (Considerazioni su Traceroute)
9. Traceroute Considerations (Considerazioni su Traceroute)
Quando un host di origine in un sito LISP avvia un traceroute verso un host di destinazione in un altro sito LISP, è molto auspicabile vedere il percorso completo. Poiché i pacchetti sono incapsulati dall'ITR all'ETR, il tunnel attraversato può essere visto come un singolo hop. Tuttavia, un traceroute LISP fornirà il percorso completo in modo che l'utente possa vedere i 3 diversi segmenti del percorso dall'host LISP di origine all'host LISP di destinazione:
Segment 1 (basato su EID all'interno del sito LISP di origine):
source host ---> first hop ... next hop ---> ITR
Segment 2 (basato su RLOC nella rete core):
ITR ---> next hop ... next hop ---> ETR
Segment 3 (basato su EID all'interno del sito LISP di destinazione):
ETR ---> next hop ... last hop ---> destination host
Per il segmento 1 del percorso, i messaggi ICMP Time Exceeded vengono restituiti nel modo normale, proprio come oggi. L'ITR esegue la decremento del TTL e verifica se è 0 prima dell'incapsulamento. Pertanto, l'hop dell'ITR viene visto dalla sorgente traceroute con un indirizzo EID (l'indirizzo dell'interfaccia rivolta verso il sito).
Per il segmento 2 del percorso, i messaggi ICMP Time Exceeded vengono restituiti all'ITR poiché la decremento del TTL a 0 viene eseguita sull'header esterno, quindi il messaggio ICMP è destinato all'indirizzo RLOC dell'ITR e all'indirizzo RLOC di origine del pacchetto traceroute incapsulato. L'ITR esamina l'interno del payload ICMP per controllare la sorgente traceroute in modo che il messaggio ICMP possa essere restituito all'indirizzo del client traceroute e preserva anche l'indirizzo IP del router core nel messaggio ICMP. In questo modo il client traceroute può visualizzare gli indirizzi dei router core (indirizzi RLOC) nell'output traceroute. L'ETR restituisce il suo indirizzo RLOC e risponde al decremento del TTL a 0 proprio come i router core precedenti.
Per il segmento 3, il router next-hop a valle dell'ETR decrementerà il TTL del pacchetto che è stato incapsulato, inviato attraverso il core, disincapsulato dall'ETR e inoltrato perché non è la destinazione finale. Se il TTL viene decrementato a 0, qualsiasi router sul percorso verso la destinazione traceroute (incluso il router next-hop o la destinazione) invierà un messaggio ICMP Time Exceeded all'EID di origine del client traceroute. Il messaggio ICMP verrà incapsulato dall'ITR locale e inviato all'ETR nel sito di origine che ha avviato il traceroute, dove verrà consegnato all'host.