Jak używać traceroute w Ubuntu | Instalacja, opcje i szczegółowe rozwiązywanie problemów z błędami

1. Czym jest traceroute? Podstawowe narzędzie do analizy ścieżek sieciowych

Przegląd traceroute

traceroute to narzędzie, które śledzi ścieżkę połączenia sieciowego i identyfikuje routery, przez które przechodzą pakiety danych przed dotarciem do miejsca docelowego. Używając tego narzędzia, możesz zlokalizować, gdzie występują opóźnienia lub awarie sieci. Jest szczególnie przydatne dla administratorów sieci i specjalistów IT diagnozujących problemy sieciowe.

Jak działa traceroute

traceroute wysyła pakiety ICMP (Internet Control Message Protocol) lub UDP (User Datagram Protocol) i rejestruje odpowiedzi od każdego routera wzdłuż ścieżki. Ten proces pozwala użytkownikom zobaczyć każdy węzeł, przez który przechodzą dane.

Jak to działa: Krok po kroku

  1. Wyślij pakiety z niską wartością TTL (Time to Live).
  2. Gdy pakiety przechodzą przez routery, wartość TTL maleje. Gdy osiągnie zero, router zwraca odpowiedź.
  3. Zapisz adres IP routera i czas odpowiedzi na podstawie otrzymanych odpowiedzi.
  4. Zwiększaj wartość TTL krok po kroku i wysyłaj ponownie pakiety, aż osiągniesz miejsce docelowe.

Korzyści z traceroute

  • Identyfikacja awarii sieci: Szybko zlokalizuj, gdzie występują opóźnienia lub utrata pakietów wzdłuż trasy sieciowej.
  • Wizualizacja ścieżek routingu: Zrozum trasę, jaką pokonują pakiety, w tym kraje lub regiony, przez które przechodzą.
  • Analiza wydajności: Zmierz czasy odpowiedzi na każdym przeskoku, aby ocenić wydajność sieci.

Porównanie z innymi narzędziami

traceroute jest wyspecjalizowane w śledzeniu ścieżek sieciowych, ale często porównywane jest do narzędzi takich jak ping i mtr. Podczas gdy ping sprawdza łączność z pojedynczym hostem, traceroute wizualizuje całą trasę sieciową. mtr łączy funkcjonalności traceroute i ping, umożliwiając monitorowanie ścieżek sieciowych w czasie rzeczywistym.

侍エンジニア塾

2. Jak zainstalować traceroute na Ubuntu

Sprawdzenie, czy traceroute jest zainstalowane

traceroute może nie być preinstalowane na Ubuntu. Aby sprawdzić, czy jest zainstalowane, uruchom następujące polecenie w terminalu:

traceroute --version

Jeśli polecenie wyświetli informacje o wersji, traceroute jest już zainstalowane. Jeśli zobaczysz „command not found”, musisz je zainstalować.

Kroki instalacji traceroute

Postępuj zgodnie z tymi krokami, aby zainstalować traceroute:

  1. Aktualizacja informacji o pakietach Uruchom następujące polecenie, aby zaktualizować listę pakietów:
   sudo apt update
  1. Instalacja traceroute Uruchom następujące polecenie, aby zainstalować traceroute:
   sudo apt install traceroute

Podczas instalacji, jeśli zostaniesz poproszony, naciśnij „Y”, aby kontynuować.

  1. Weryfikacja instalacji Po zainstalowaniu uruchom następujące polecenie, aby sprawdzić, czy traceroute działa:
   traceroute --version

Jeśli instalacja powiodła się, wyświetli szczegóły wersji.

Uwagi dotyczące uprawnień

Ponieważ traceroute wykonuje operacje związane z siecią, niektóre opcje wymagają sudo. Na przykład, podczas używania pakietów ICMP, wykonaj polecenie z sudo:

sudo traceroute -I example.com

Rozwiązywanie problemów z instalacją

Instalacja może nie powiodła się z powodu następujących problemów:

  1. Problemy z połączeniem sieciowym Jeśli Twoje połączenie internetowe jest niestabilne, instalacja może zatrzymać się w połowie. Sprawdź połączenie i spróbuj ponownie.
  2. Problemy z zarządzaniem pakietami Jeśli pamięć podręczna pakietów jest uszkodzona, wyczyść ją za pomocą następujących poleceń i spróbuj ponownie:
   sudo apt clean
   sudo apt update
   sudo apt install traceroute

3. Podstawowe polecenia i opcje traceroute

Podstawowa składnia traceroute

Podstawowa składnia używania traceroute jest następująca:

traceroute [options] <target hostname or IP address>

Wykonanie tego polecenia wyświetla routery, przez które przechodzą pakiety, ich adresy IP oraz opóźnienie dla każdego przeskoku.

Przykład podstawowego użycia

Aby prześledzić trasę do nazwy hosta docelowego (np. google.com), uruchom:

traceroute google.com

To polecenie dostarcza następujące informacje:

  • Adresy IP routerów wzdłuż ścieżki
  • Czas odpowiedzi (w milisekundach) dla każdego skoku
  • Komunikaty błędów (np. * jeśli pakiet nie mógł dotrzeć do węzła)

Wyjaśnienie kluczowych opcji

traceroute zawiera różne opcje do ulepszenia analizy sieci.

-I: Użyj pakietów ICMP Echo

Domyślnie traceroute używa pakietów UDP. Ta opcja przełącza na pakiety ICMP echo.

traceroute -I example.com

Przykład zastosowania: Niektóre firewalle blokują UDP, ale pozwalają na ICMP, co czyni tę opcję użyteczną do omijania ograniczeń.

-T: Użyj pakietów TCP

Używa protokołu TCP, co jest przydatne do diagnozowania problemów z serwerami WWW.

traceroute -T example.com

Przykład zastosowania: Analiza połączeń z serwerami WWW (porty 80 lub 443).

-p: Określ numer portu

Pozwala określić port dla pakietów UDP lub TCP.

traceroute -p 8080 example.com

Przykład zastosowania: Sprawdzanie ruchu związanego z konkretną usługą.

-n: Nie rozwiązuj nazw hostów

Pomija rozwiązywanie nazw hostów i wyświetla tylko adresy IP, co przyspiesza wykonanie.

traceroute -n example.com

-m: Ustaw maksymalną liczbę skoków

Ogranicza liczbę skoków (domyślnie 30).

traceroute -m 20 example.com

-q: Ustaw liczbę prób

Określa liczbę pakietów wysyłanych na skok (domyślnie 3).

traceroute -q 1 example.com

4. Zaawansowane zastosowania traceroute: Praktyczna diagnostyka sieci

Używanie traceroute w rzeczywistych scenariuszach

traceroute jest wysoce skuteczne do identyfikowania problemów sieciowych i analizy wydajności. Poniżej przedstawiono kilka praktycznych scenariuszy, w których traceroute może być przydatne.

Identyfikacja przyczyn opóźnień w sieci

Jeśli Twoja sieć jest wolna, traceroute może pomóc określić, gdzie występuje opóźnienie. Wykonaj następujące kroki:

  1. Śledź trasę do serwera docelowego
   traceroute example.com
  1. Sprawdź, gdzie występuje opóźnienie Analizuj czasy odpowiedzi dla każdego skoku. Jeśli konkretny skok ma znacznie wyższe opóźnienie, ten węzeł może być przyczyną opóźnienia. Przykładowy wynik:
   1  192.168.1.1 (192.168.1.1)  1.123 ms  1.456 ms  1.789 ms
   2  10.0.0.1 (10.0.0.1)  2.456 ms  2.678 ms  2.789 ms
   3  192.0.2.1 (192.0.2.1)  150.789 ms  151.123 ms  151.456 ms
  • Kluczowe spostrzeżenie: Jeśli skok #3 ma nagły wzrost opóźnienia, może być problem w pobliżu 192.0.2.1.

5. Częste błędy podczas uruchamiania traceroute i sposoby ich naprawy

Częste błędy w traceroute

Czasami uruchamianie traceroute powoduje błędy lub nieoczekiwane zachowanie. Poniżej przedstawiono kilka powszechnych problemów i ich rozwiązań.

Błąd command not found

Przyczyna:

  • traceroute może nie być zainstalowane.

Rozwiązanie:

  • Sprawdź, czy traceroute jest zainstalowane, a jeśli nie, zainstaluj je za pomocą następującego polecenia:
  sudo apt update
  sudo apt install traceroute

Pojawienie się * * * w wynikach

Przyczyna:

  • Pakiety mogą być blokowane przez firewall lub politykę sieciową.
  • Niektóre routery lub urządzenia nie odpowiadają na żądania traceroute.

Rozwiązanie:

  1. Użyj różnych protokołów
  • Użyj pakietów ICMP echo: traceroute -I example.com
  • Użyj pakietów TCP: traceroute -T example.com
  1. Skontaktuj się z administratorami sieci
  • Niektóre organizacje lub dostawcy ISP blokują określone pakiety, więc może być konieczne skontaktowanie się z administratorem sieci.

6. Najczęściej zadawane pytania (FAQ)

P1. Jaka jest różnica między traceroute a ping?

O:

  • traceroute: Pokazuje całą ścieżkę sieciową i identyfikuje, gdzie występują opóźnienia lub awarie.
  • ping: Sprawdza, czy pojedynczy host jest osiągalny i mierzy czas podróży w obie strony, ale nie podaje szczegółów routingu.

P2. Dlaczego traceroute zatrzymuje się przed osiągnięciem celu?

O:
Możliwe powody to:

  1. Ograniczenia firewalla Niektóre routery blokują pakiety odpowiedzi.
  2. Konfiguracja routera Niektóre routery są skonfigurowane tak, aby nie wysyłać odpowiedzi.
  3. Utrata pakietów Wysokie zatłoczenie sieci może powodować gubienie pakietów.

Rozwiązania:

  • Spróbuj użyć ICMP (opcja -I) lub TCP (opcja -T) zamiast UDP.

7. Wniosek

Znaczenie traceroute

traceroute to niezbędne narzędzie do diagnozowania problemów sieciowych i analizy ścieżek. Poprzez skuteczne jego wykorzystanie możesz zidentyfikować problemy z przepływem sieci i efektywnie zlokalizować opóźnienia.

Główne wnioski z tego artykułu

  1. Zrozumienie funkcjonalności traceroute
  • traceroute wizualizuje ścieżki podróży pakietów i identyfikuje opóźnienia lub awarie.
  1. Instalowanie traceroute na Ubuntu
  • Można je łatwo zainstalować za pomocą sudo apt install traceroute.
  1. Podstawowe polecenia i przydatne opcje
  • Obsługuje ICMP, TCP, dostosowywanie liczby przeskoków i więcej.
  1. Zaawansowane zastosowania
  • Przydatne do diagnozowania opóźnień sieciowych, utraty pakietów i ograniczeń zapór ogniowych.
  1. Obsługa powszechnych błędów
  • Rozwiązania dla błędów * * * i command not found.
  1. Odpowiedzi na często zadawane pytania
  • Wyjaśniono różnice między traceroute a ping oraz sposób obsługi niekompletnych tras.

Maksymalne wykorzystanie traceroute

traceroute jest szeroko stosowane od osobistego diagnozowania problemów sieciowych po zarządzanie infrastrukturą IT w firmach. Jest szczególnie przydatne do:

  • Badania niestabilnych połączeń internetowych
  • Weryfikacji ustawień zapór ogniowych i routerów
  • Analizy globalnych tras sieciowych

Kolejne kroki

Spróbuj uruchomić traceroute w swojej sieci, aby zastosować to, czego się nauczyłeś. Ćwiczenia pomogą utrwalić koncepcje omówione w tym artykule.

Końcowe przemyślenia

Diagnostyka sieci to podstawowa umiejętność IT. Opanowanie traceroute da ci znaczną przewagę w diagnozowaniu i zarządzaniu infrastrukturą sieciową.