Netwerkproblemen op Linux diagnosticeren met Traceroute

Netwerkproblemen op Linux diagnosticeren met Traceroute
Traceroute Linux aanbevolen

Traceroute is een eenvoudig netwerkhulpprogramma dat de route kan traceren die een internetpakket aflegt van de bron naar de bestemmingshost. Dit artikel laat zien hoe u Traceroute kunt gebruiken om de netwerkstatus van uw Linux te controleren en opkomende problemen te diagnosticeren.

Hoe werkt Traceroute?

Traceroute werkt door UDP-pakketten met korte TTL-lengtes naar elke internetgateway langs het pad naar een externe host te sturen. Deze korte TTL-lengtes dwingen deze gateways vervolgens om een ​​ICMP “TIME_EXCEEDED”-antwoord te rapporteren, samen met het IP-adres van hun interface.

Deze twee factoren gecombineerd zorgen ervoor dat traceroute een gedetailleerde lijst kan maken van machines waar uw pakket doorheen gaat als het verbinding maakt met een externe server. Als u bijvoorbeeld een traceroute naar ‘google.com’ in mijn netwerk uitvoert, worden er tussen de 9 en 10 gateways weergegeven voordat deze de servers van Google bereikt.

Een terminal die een eenvoudige traceroute voor google.com toont.

Welke netwerkproblemen kan Traceroute oplossen?

Traceroute is slechts een tool voor netwerkonderzoek en optimaliseert of repareert geen openstaande problemen in uw netwerk. Traceroute kan alleen beschrijven hoe netwerken en de pakketten die daarop reizen zich gedragen.

Desondanks is het nog steeds een belangrijk hulpmiddel voor het diagnosticeren van potentiële netwerkproblemen. Een goed voorbeeld is wanneer een lokale gateway er niet in slaagt een pakket door te sturen naar de volgende hop. Traceroute kan dit aanpakken door elke router binnen uw kernnetwerk te markeren die geen “TIME_EXCEEDED”-antwoord verzendt.

Een terminal die een eenvoudige traceroute toont waarbij gateways voortdurend niet op het programma reageren.

Daarnaast kunt u traceroute ook gebruiken om te controleren op latentieproblemen tussen hosts. Dit kan handig zijn als u wilt zien of uw lokale netwerk een VPN nodig heeft om een ​​consistente lage latentie te garanderen bij het verbinden met een externe machine.

Traceroute gebruiken onder Linux

Open een nieuwe terminal en typ traceroute gevolgd door het machineadres waarmee u uw machine wilt verbinden. Dit kan een domeinnaam of een IP-adres zijn. Bijvoorbeeld:

Druk op Enter om het pad naar uw externe host in kaart te brengen.

Een terminal die een eenvoudige traceroute naar een kleine VPS toont.

Pakketten verzenden met aangepaste TTL in Traceroute

Hoewel het gebruik van traceroute op zichzelf voldoende is voor basisgebruik, kunt u ook de werking van het programma aanpassen met behulp van vlaggen. Dit kan vooral handig zijn als u een triage van uw netwerk uitvoert.

Een van de meest voorkomende aanpassingen in traceroute is het wijzigen van de hoeveelheid pakketten die naar een gateway worden verzonden. Om dit te doen, gebruikt u de vlag -q gevolgd door het aantal pakketten dat u per verzoek wilt verzenden:

U kunt ook de vlag -N gebruiken, gevolgd door “1” om gelijktijdige pakketverzoeken expliciet uit te schakelen. Dit is handig als u gateways heeft die UDP-pakketten met korte TTL beperken.

Een terminal die een traceroute toont waarbij gelijktijdige pakketten zijn uitgeschakeld.

Ten slotte kunt u ook de standaard TTL-waarde voor traceroute wijzigen. Om dat te doen, voegt u de vlag -f toe, gevolgd door de TTL die u voor uw eerste testpakket wilt gebruiken.

Een terminal die een traceroute toont waarbij het programma de eerste twee gateways overslaat.

Het Traceroute-protocol wijzigen in Linux

Standaard gebruikt traceroute in Linux UDP voor het verzenden van testpakketten naar netwerkgateways. Dit kan een probleem zijn als u een gateway onderzoekt die traceroute-pakketten actief blokkeert.

Om dit op te lossen, kunt u de vlag -T gebruiken om traceroute uit te voeren met behulp van eenvoudige TCP SYN-pakketten.

Een terminal die een traceroute toont waarbij het programma het TCP SYN-pakket gebruikt in plaats van UDP.

Aan de andere kant kunt u traceroute ook dwingen een ICMP ECHO-pakket te gebruiken als de bestemmingsgateway alleen UDP beperkt:

Traceroute ondersteunt ook aangepaste netwerkinterfaces. Hier gebruikt traceroute een andere netwerkkaart in uw machine om het pad van een pakket te onderzoeken.

Om dat te doen, voert u het programma uit met de vlag -i gevolgd door de apparaatnaam van uw interface.

Afgezien daarvan kunt u de vlag -p gebruiken om het startpoortnummer op te geven dat traceroute zal gebruiken voor UDP-probing:

Ten slotte verandert de vlag -p ook zijn gedrag, afhankelijk van het protocol dat u gebruikt. Door het te koppelen met -I wordt de waarde -p ingesteld als het initiële ICMP-volgnummer in plaats van de bestemmingspoort.

Een terminal die een traceroute toont met behulp van ICMP ECHO met een aangepast ICMP-volgnummer.

Het leren gebruiken van traceroute is slechts de eerste stap om te begrijpen hoe computers met elkaar communiceren via een netwerk. Leer meer over computernetwerken door de inhoud van een TCP-pakket te analyseren met behulp van tcpdump.

Ondertussen kun je ook meer te weten komen over de hogere OSI-lagen, zoals DNS, door de dig-tool in Linux te gebruiken.. een>

Alle wijzigingen en screenshots door Ramces Red.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *