Traceroute

    Diagnoseverktøy som lister ruterne på veien til en vert ved å sende prober med økende IP-TTL.

    traceroute (tracert på Windows) kartlegger ruterne mellom deg og en destinasjon. Det utnytter IP-TTL-feltet: probe 1 sendes med TTL 1, første ruter dekrementerer den til 0 og svarer med ICMP Time Exceeded, slik at dens IP-adresse avsløres. Probe 2 sendes med TTL 2, ruter to svarer, og så videre, helt til en probe når destinasjonen, som svarer på en annen måte som avslutter trasen.

    Selve probene er ikke standardisert. Klassisk Unix traceroute sender UDP-datagrammer til høye, usannsynlige porter og tolker ICMP Port Unreachable fra destinasjonen som sluttmarkør. tracert på Windows sender ICMP Echo Request direkte. Moderne varianter (tcptraceroute, traceroute -T) bruker TCP SYN til en reell port som 80 eller 443, noe som har langt høyere sjanse til å passere brannmurer som dropper UDP og uadressert ICMP.

    Latensen i utskriften er svartid per hopp, ikke tiden en pakke tilbrakte på den ruteren. Høy latens på hopp 3 med lav latens på hopp 4 betyr som regel at hopp 3 sitt kontrollplan svarer tregt, ikke at trafikken faktisk ble forsinket der. Tilsvarende betyr stjerner (* * *) at en ruter ikke svarte på proben — som regel på grunn av ICMP-rate-limiting — og indikerer ikke nødvendigvis pakketap for ekte trafikk.

    Internett-baner er ofte asymmetriske: returveien fra hver ruter trenger ikke matche fremoverveien du prober, så rundturstiden reflekterer begge retninger. traceroute supplerer derfor ping når du skal finne ut hvor en sesjon feiler, men korrekt tolking krever at tallene per hopp leses som hint, ikke som presise målinger.

    Nøkkelpunkter

    • Øker IP-TTL og leser ICMP Time Exceeded-svar
    • Unix-default: UDP til høye porter; Windows tracert: ICMP Echo; TCP-varianter for brannmurrike baner
    • Latens per hopp reflekterer ruterens svartid, ikke transittforsinkelse
    • * * * betyr som regel ICMP-rate-limiting, ikke ekte tap
    • Baner er ofte asymmetriske — returveien kan variere per hopp
    • Supplerer ping for å lokalisere hvor en sesjon ryker
    • Samme prinsipp på IPv6 via ICMPv6 Time Exceeded

    Relaterte begreper

    Relaterte verktøy