Traceroute: de rontgenfoto van het netwerkpad
Terwijl Ping de vraag beantwoordt "is de host bereikbaar?", beantwoordt Traceroute "welk pad volgen de pakketten om er te komen?". Het toont elke router (hop) tussen bron en bestemming, met het bijbehorende IP-adres, hostname en reactietijd. Deze hop-voor-hop zichtbaarheid is essentieel voor het diagnosticeren van routeringsproblemen, het identificeren van knelpunten en het lokaliseren van het exacte punt waar pakketverlies of abnormale latentie optreedt.
Traceroute werkt door gebruik te maken van het TTL-veld (Time To Live) van de IP-header. Het verstuurt pakketten met oplopende TTL vanaf 1: de eerste router verlaagt de TTL naar 0 en antwoordt met een ICMP Time Exceeded-bericht, waarmee zijn adres wordt onthuld. Het tweede pakket heeft TTL 2 en wordt door de tweede router naar 0 verlaagd, enzovoort. Door het proces te herhalen met oplopende TTL-waarden wordt het volledige pad naar de bestemming in kaart gebracht.
De traceroute lezen
Elke regel toont: het hopnummer, de hostname en IP van de router, en de reactietijd. Sterretjes (* * *) duiden op een router die niet reageert op traceroute-pakketten — niet per se een probleem, aangezien veel bedrijfsrouters ICMP blokkeren als beleid. Het belangrijkste aspect is het latentieverschil tussen opeenvolgende hops: een sprong van 15ms (hop 4) naar 18ms (hop 6) is normaal, maar een sprong van 15ms naar 150ms zou wijzen op een knelpunt in dat segment.
Problemen diagnosticeren met traceroute
Een plotselinge toename van latentie tussen twee hops duidt op het problematische segment. Als de toename bij de laatste hop is, ligt het probleem waarschijnlijk bij de bestemmingsserver. Als het bij de eerste hops is, ligt het in je lokale netwerk of bij je ISP. Als een hop pakketverlies toont (sommige pogingen met * en andere met antwoord), is die router overbelast. Gebruik ASN Lookup om te identificeren bij welke provider de problematische router hoort, en Ping om de latentie te bevestigen met langere tests.
Voor een volledige analyse van het netwerkpad, combineer traceroute met IP Geolocation om de hops geografisch te visualiseren en suboptimale routeringspaden te identificeren. Een traceroute vanuit Amsterdam die eerst naar Londen gaat, dan naar New York, en dan terug naar Frankfurt om een server in Duitsland te bereiken, wijst duidelijk op een routeringsprobleem dat je ISP of hostingprovider zou moeten corrigeren.
Een bijzonder geval is een traceroute die een bepaald punt bereikt en dan stopt met een eindeloze reeks sterretjes: dit kan duiden op een firewall die verkeer volledig blokkeert, een routeringslus, of een ACL (Access Control List) die pakketten met verlopen TTL verwerpt. Probeer in deze gevallen traceroute-varianten met verschillende protocollen: TCP op poort 80 werkt vaak waar ICMP geblokkeerd is, omdat firewalls zelden webverkeer blokkeren.