Känner du till kommandot traceroute eller "tracert" i Windows? Det är ett verktyg som låter dig se vilken sökväg din anslutning tar när du går till en viss destination. Även om det är väldigt intressant att se var dina paket går när du ansluter till en webbplats, är det främst att se var längs vägarna går förlorade.

Vad är Traceroute?

Innan vi hoppar in i hur traceroute kan användas, låt oss prata om vad traceroute gör för att börja med. När du spårar en rutt följer du vägen som ett paket tar och ser var det slutar. Om du någonsin har beställt ett paket med spårning, har du säkert sett (med spänning!) Vägen paketet tog till din dörr. Traceroute är en liknande process, förutom att vi inte kan placera en spårningsenhet på ett paket med data. Vi behöver lite mer uppfinningsrik för att spåra datapaket.

Om ett paket löper ut medan det hålls av en router, ringer routern tillbaka till var paketet kom ifrån för att säga att paketet löpte ut. Medan vi inte kan titta på ett paket går vi runt ett nätverk direkt som ett spårat paket, vi kan skicka ut paket som löper ut på varje router när den kommer. Routrarna skickar tillbaka ett felmeddelande, och vi kan analysera de platser som rapporterar ett dödpaket. Då kan vi använda detta för att uppskatta var paketet går.

För att göra detta använder vi en egenskap av paket som heter TTL. TTL betyder "Time to Live" och det dikterar hur många routrar ett paket kan komma fram till innan det löper ut. När en router hanterar ett paket, sänker den TTL-en med en innan den passerar den. Om TTL når 0, utgår paketet och routern rapporterar att det går ut. Under en traceroute skickas ett paket med TTL på 1. Detta hanteras av den första routern och utgår omedelbart. Routern skickar tillbaka sitt fel, och tracerout loggar sin plats. Traceroute skickar sedan ett paket med TTL 2 som gör det förbi den första routern men löper ut på den andra. Sedan skickas ett paket med en TTL på 3, och så vidare.

Ett exempel på Traceroute i åtgärd

Låt oss ta en titt på ett exempel på vad som händer under en traceroute.

Dator skickar paket på TTL 1 -> Router A minskar med 1, till 0 -> TTL är 0, så paketet dör -> Routern A rapporterar sin plats

Datorn skickar paket på TTL 2 -> Routern A minskar med 1 till 1 -> Skickar till routern B -> Routern B minskar med 1 till 0 -> TTL är 0, så paketet dör -> Routern B rapporterar sin plats

Dator skickar paket på TTL 3 -> Router A minskar med 1 till 2 -> Skickar till router B -> Router B minskar med 1 till 1 -> Skickar till server -> Server skickar tillbaka bekräftelse på anslutning .

Du kan se att vi redan bygger en uppfattning om var vårt paket går ifrån detta. När traceroute får ett fel från destinationen stoppar det sedan tracerouten, och du kan analysera var paketet gick. Mycket användbart!

Hur man utför en Traceroute

Så, låt oss gå vidare och titta på hur man gör en traceroute. Först, ta upp ditt kommandofönster. Detta kan göras genom att klicka på Start och sedan skriva cmd i sökningen och sedan trycka på Enter. Du kan också hämta kommandofönstret genom att trycka på Windows-tangenten + R och sedan skriva cmd i det nya fönstret.

Här skriver tracert en destination, antingen som en URL eller en IP (www.twitter.com eller 104.244.42.1). Tryck enter. Tracerouten börjar logga in anslutningen till den destination du ställt in. Luta dig tillbaka och se det gå!

Hur man använder Traceroute för att diagnostisera problem

Nu när vi vet vad traceroute gör, kan vi använda den för att upptäcka var anslutningar släpps. Tänk om vi skickade ut paket med ökande TTL, men när vi kommer till en viss TTL-nivå får vi inte några felmeddelanden från nästa router alls. Detta innebär troligen att nästa router inte tar emot paketet alls. Datorn kommer att vänta på att routern ska prata med det; om det inte får ett fel kommer det att rapporteras med en " Request Timed Out.

Hur är det här användbart?

När en anslutning dör, kan du använda traceroute för att se var längs rutten den dör. Om paketen inte tar ut den från routern innan du slår ut, går det fel med routern. Om paketet kommer ut ur din router med framgång men dör någonstans i utbytet är det troligt att det är ett ISP-problem.

När du har problem med att ansluta till en webbplats kan du berätta för traceroute att kontrollera anslutningen. Om du får nollfel från din router eller utbyte, men timeout händer senare i kedjan, är det troligen inte din router eller ISP vid fel.

En sak du bör notera när du använder traceroute-paket tar inte alltid samma väg varje gång de går till en viss webbplats. Se till att hålla i åtanke när du utför en traceroute och försöker rita avgörande bevis från det.

Slutsats

Medan ett roligt verktyg för att se var dina paket går, kan traceroute också användas för att se var de stör. Nu när du vet hur traceroute fungerar kan du använda det för att bättre kunna identifiera var längs anslutningen förpackningarna försvinner och var problemet kan ligga. Lycka till med din diagnos!