Categorie: Artikel
Traceroute uitgelegd

Tracert en traceroute zijn programma’s ontwikkeld in de jaren '80, door alle ontwikkelingen in de loop der jaren zijn de resultaten en werking van deze programma’s minder nauwkeurig geworden. Maar wat is en doen tracert en traceroute nu precies?
traceroute (Linux/Unix varianten) of tracert (Windows-computers) is een programma waarmee het mogelijk is om de route van een bron tot aan een bepaald doel in beeld te brengen. Dit in beeld brengen wordt over het algemeen in een tekstuele omgeving getoond maar er circuleren op internet ook programma’s en websites die een grafische omgeving tonen.
Aan de hand van de resultaten die traceroute of tracert toont, kan je mogelijk ontdekken welke tussenstations de pakketten passeren en waar mogelijke problemen optreden.
De werking
Unix/Linux en varianten hierop maken over het algemeen gebruik van het UDP-Protocol, Windows gebruikt het ICMP-Protocol en anderen gebruiken veelal TCP. Afhankelijk van welk protocol wordt gebruikt, kan de bestemming wel of niet reageren. Geen reactie van de bestemming is tegenwoordig heel normaal, lang leve de 'Firewall'.
Tracert, traceroute of MTR, volgen de route naar een ingevoerde bestemming door het verzenden van pakketjes. De pakketjes die worden verzonden gebruiken de Time To Live (TTL) om de resultaten tijdens een traceroute te berekenen.
Wanneer een datapakketje wordt verzonden, verlagen de routers de TTL van dat pakket met één voordat het pakket naar het volgende punt wordt doorgestuurd. Om deze reden kunnen we dankzij TTL het aantal "hops" weten dat het pakket heeft gemaakt van een oorsprong naar een bestemming. Wanneer de TTL van een pakket een nul bereikt, zonder de eindbestemming te bereiken, stuurt de router een "Time Out / Time Exceeded"-bericht terug naar de afzender.
Door eerst een pakketje te verzenden met een TTL van 1 en de TTL bij iedere volgende verzending met 1 te verhogen - totdat het de eindbestemming bereikt - kan je het aantal tussenliggende routers zien en berekenen wat de latency is. Latency herken je vaak aan het aantal ms waarin een reactie wordt gegeven. Maar verkijk je hier niet te veel op!
Latency :: Snelheidsbeperkingen en de-prioritering
Zoals ik het artikel al begon, tracert en traceroute bestaan al sinds de jaren ’80 en toen waren netwerken bij lange na niet zo groot en complex als nu.
Tegenwoordig worden routers flink belast met grote hoeveelheden data waardoor bepaalde typen verkeer bij sommige routers een lage prioriteit krijgt. Hierdoor kan de latency (het aantal ms die getoond wordt in een tracert of traceroute, negatief worden beïnvloed. Dat betekent echter niet dat normaal verkeer hier iets van merkt, tracert/traceroute en verwanten vallen onder niet-cruciale gegevens. Normaal verkeer staat hierboven en zal dus niet negatief worden beïnvloed door eventuele beperkingen en de-prioritering. Voorbeeld;
Bij hop 8 zien we 3 sterretjes met een Request time out. We zien bij hop 9 dat de server waarop nu.nl zich bevindt reageert, maar niet of alle pakketjes wel goed aan komen. Laten we dezelfde test dus eens doen met WinMTR.
Ook hier zien we dat bij de 8e hop geen antwoord ontvangen wordt, hoe weten we nu zeker dat de verbinding vanaf onze computer naar nu.nl goed is? Hiervoor moeten we kijken naar Sent en Recv. Onze computer verstuurde en ontving 51 pakketjes, als hetzelfde aantal overeenkomt met de ontvanger (het doel) dan is er niets aan de hand met onze route naar nu.nl en WinMTR laat zien dat alles netjes is aangekomen waardoor de conclusie "geen probleem" kan worden getrokken.
Heb je een apparaat in je netwerk met Linux? Gebruik dan MTR (als vervanger voor WinMTR).
Latency :: de-prioritering

Kom je tijdens je tracert of traceroute ineens een hele hoge latency in ms tegen in de route die het aflegt? Vaak is dit een signaal dat de-prioritering plaatsvindt, verderop zie je vaak namelijk weer dat het aantal ms weer een stuk lager ligt. Niets om je zorgen over te maken, dus!
Geen Antwoord/timeout?
Zie je een sterretje, een Request timed out. Dan betekent het dus niet per definitie dat de route naar het doel beroerd is, grote kans dat WinMTR of MTR-uitkomst biedt in je onderzoek of er een probleem is in de richting van een website.
Zie je een sterretje ( * ) ?
- Offline (storing) – de router of het doel kan inderdaad niet worden bereikt. In dit geval stopt een tracert omdat de router het verkeer tenslotte niet kan doorsturen naar de volgende router. Vaak gevolgd door een "Destination not reachable / Doel niet bereikbaar".
- Tracert/Traceroute verkeer wordt geblokkeerd op de router of door de TTL of de Firewall van het doel en er komt in het geheel geen antwoord. De router of het doel is dan wel online, maar ICMP-verkeer wordt niet toegestaan door bijvoorbeeld de Firewall.
- ICMP-verkeer is toegestaan maar wordt afgehandeld op zeer lage prioriteit. In dit geval worden willekeurige antwoorden gegeven d.w.z. wel/geen reactie, reactie met hoge aantal ms etc. Afhankelijk van de drukte op de router of de server.
Packet-loss?
Naar mijn mening (maar de meningen zijn hierin soms nogal verdeeld) tonen tracert en traceroute niet echt de packet-loss. In principe is er pas sprake van Packet-loss als; van het totaal aantal verzonden pakketjes, niet alle pakketjes aankomen of ontvangen worden bij/van het doel.
Vooral tijdens het spelen van online games heeft packet-loss een negatieve invloed en kan dit ontzettend hinderlijk zijn. In bovenstaande voorbeelden zag je bij hop 8 bijvoorbeeld een loss van 100% maar het doel (hop 9) verzond en ontving alles en had hierom dus geen loss… dus… geen sprake van packet-loss want de router die niet reageerde stuurde alles wel netjes door.
Meer lezen?
Terug