Cum să diagnosticați problemele de rețea pe Linux cu Traceroute

Admin

Traceroute Linux Prezentare

Traceroute este un simplu utilitar de rețea care poate urmări ruta pe care o ia un pachet de internet de la sursă la gazda de destinație. Acest articol vă va arăta cum puteți utiliza Traceroute pentru a verifica starea rețelei Linux și pentru a diagnostica problemele emergente.

Notă: În timp ce acest articol evidențiază traceroute în Linux, puteți utiliza acest utilitar și în macOS și Windows.

Conţinut

  • Cum funcționează Traceroute?
  • Ce probleme de rețea poate rezolva Traceroute?
  • Utilizarea Traceroute în Linux

Cum funcționează Traceroute?

Traceroute funcționează prin trimiterea de pachete UDP cu lungimi TTL scurte către fiecare gateway de internet de-a lungul căii către o gazdă la distanță. Aceste lungimi TTL scurte forțează apoi aceste gateway-uri să raporteze un răspuns ICMP „TIME_EXCEEDED” împreună cu adresa IP a interfeței lor.

Acești doi factori s-au combinat pentru a permite traceroute să creeze o listă detaliată a mașinilor prin care va trece pachetul tău pe măsură ce se conectează la un server extern. De exemplu, rularea unui traceroute către „google.com” în rețeaua mea va lista între 9 și 10 gateway-uri înainte de a ajunge la serverele Google.

Un terminal care arată un traseu de bază pentru google.com.

Ce probleme de rețea poate rezolva Traceroute?

Traceroute este doar un instrument de sondare a rețelei și nici nu optimizează și nici nu rezolvă nicio problemă restante din rețeaua dvs. Traceroute poate descrie doar modul în care se comportă rețelele și pachetele care călătoresc pe ele.

În ciuda acestui fapt, este încă un instrument important pentru diagnosticarea potențialelor probleme de rețea. Un exemplu bun este atunci când un gateway local nu reușește să redirecționeze un pachet la următorul său hop. Traceroute poate rezolva acest lucru evidențiind orice router din interiorul rețelei de bază care nu trimite un răspuns „TIME_EXCEEDED”.

Un terminal care arată un traseu de bază în care gateway-urile nu reușesc constant să răspundă la program.

În afară de asta, puteți utiliza și traceroute pentru a verifica problemele de latență între gazde. Acest lucru poate fi util dacă doriți să vedeți dacă rețeaua locală are nevoie de un VPN pentru a asigura o latență scăzută constantă atunci când vă conectați la o mașină de la distanță.

Bine de stiut: Aflați mai multe despre sondarea rețelei de folosind nmap fără sudo în Linux.

Utilizarea Traceroute în Linux

Deschideți un nou terminal și tastați traceroute urmat de adresa aparatului la care doriți să se conecteze aparatul. Acesta poate fi fie un nume de domeniu, fie o adresă IP. De exemplu:

traceroute ubuntu.myvpsserver.top

presa introduce pentru a începe maparea căii către gazda la distanță.

Un terminal care arată un traseu de bază către un VPS mic.

Bacsis: Aflați cum să verificați gateway-ul local de internet prin găsirea adresei IP a routerului dvs.

Trimiterea pachetelor cu TTL personalizat în Traceroute

În timp ce utilizarea traceroute în sine este suficientă pentru utilizarea de bază, puteți, de asemenea, să modificați modul în care funcționează programul folosind steaguri. Acest lucru poate fi util mai ales dacă faceți un triaj al rețelei dvs.

Una dintre cele mai frecvente modificări ale traceroute este schimbarea cantității de pachete pe care le trimite către un gateway. Pentru a face acest lucru, utilizați -q marcaj urmat de cantitatea de pachete pe care doriți să le trimiteți per solicitare:

traceroute -q1 ubuntu.myvpsserver.top

De asemenea, puteți utiliza -N flag urmat de „1” pentru a dezactiva în mod explicit solicitările de pachete simultane. Acest lucru este util dacă aveți gateway-uri care limitează rata pachetelor UDP cu TTL scurt.

Un terminal care arată un traseu cu pachete simultane dezactivate.

În cele din urmă, puteți modifica și valoarea TTL implicită pentru traceroute. Pentru a face asta, adăugați -f flag urmat de TTL-ul dorit pentru primul pachet de sondare.

Un terminal care arată un traseu unde programul omite primele două gateway-uri.

Schimbarea protocolului Traceroute în Linux

În mod implicit, traceroute în Linux folosește UDP pentru trimiterea pachetelor probe către gateway-uri de rețea. Aceasta poate fi o problemă dacă verificați un gateway care blochează în mod activ pachetele traceroute.

Pentru a remedia acest lucru, puteți utiliza -T flag pentru a rula traceroute folosind pachete simple TCP SYN.

Un terminal care arată un traseu unde programul utilizează pachetul TCP SYN în loc de UDP.

Pe de altă parte, puteți forța și traceroute să folosească un pachet ICMP ECHO dacă gateway-ul de destinație restricționează doar UDP:

sudo traceroute -I myvpsserver.top

Modificarea interfeței și a portului în Traceroute

Traceroute acceptă și interfețe de rețea personalizate. Aici traceroute va folosi o altă placă de rețea în mașina dvs. pentru a verifica calea unui pachet.

Pentru a face acest lucru, rulați programul cu -i flag urmat de numele dispozitivului al interfeței dvs.

traceroute -i enp1s0 myvpsserver.top

Notă: Puteți găsi interfețele de rețea disponibile pentru aparatul dvs. rulând ifconfig -s | awk '{print $1}'.

În afară de asta, puteți folosi -p flag pentru a specifica numărul portului de pornire pe care traceroute îl va folosi pentru sondarea UDP:

traceroute -p34543 myvpsserver.top

În cele din urmă, -p flag își schimbă și comportamentul în funcție de protocolul pe care îl utilizați. Împerecherea cu -I va seta -p valoare ca număr de secvență ICMP inițial în loc de portul de destinație.

Un terminal care arată un traseu utilizând ICMP ECHO cu un număr personalizat de secvență ICMP.

A învăța cum să folosești traceroute este doar primul pas în înțelegerea modului în care computerele comunică între ele printr-o rețea. Aflați mai multe despre rețelele de computere de analizarea conținutului unui pachet TCP folosind tcpdump.

Între timp, puteți afla și mai multe despre straturile superioare OSI, cum ar fi DNS, prin folosind instrumentul dig în Linux.

Toate modificările și capturile de ecran realizate de Ramces Red.

Aboneaza-te la newsletter-ul nostru!

Cele mai recente tutoriale ale noastre sunt livrate direct în căsuța dvs. de e-mail

Cum se instalează Debian prin Internet
Cum se instalează Debian prin Internet

Debian este venerat pentru aderarea sa la furnizarea de software gratuit și stabilitate. Dacă v-a...

Enlightenment Desktop Review: un manager de desktop frumos, ușor, dar diferit
Enlightenment Desktop Review: un manager de desktop frumos, ușor, dar diferit

Continuând cu seria noastră de Recenzii de mediu pentru desktop, astăzi este o alegere care are c...

Cum se remediază Nu se poate introduce o problemă de terminal în Linux
Cum se remediază Nu se poate introduce o problemă de terminal în Linux

Terminalul rămâne principalul mod în care majoritatea utilizatorilor Linux interacționează cu com...