„TCPDUMP” to analizator pakietów i używany do diagnozowania i analizy problemów sieciowych. Przechwytuje ruch sieciowy przechodzący przez urządzenie i patrzy na niego. Narzędzie „TCPDUMP” to potężne narzędzie do rozwiązywania problemów z problemami sieciowymi. Ma wiele opcji, co sprawia, że jest to wszechstronne narzędzie do rozwiązania problemów sieciowych.
Ten post jest szczegółowym przewodnikiem na temat narzędzia „TCPDUMP”, które obejmuje jego instalację, wspólne funkcje i użycie z różnymi opcjami. Zacznijmy od instalacji:
Jak zainstalować „TCPDUMP”:
W wielu dystrybucjach „TCPDUMP” wychodzi z pudełka i aby to sprawdzić, użyj:
$ Który tcpdump
Jeśli nie zostanie znalezione w dystrybucji, zainstaluj go za pomocą:
$ sudo apt instal tcpdump
Powyższe polecenie zostanie użyte do dystrybucji opartych na debian, takich jak Ubuntu i LinuxMint. W przypadku „redhat” i „centos” użyj:
$ sudo dnf instaluj tcpdump
Jak przechwytywać pakiety za pomocą TCPDump:
Do przechwytywania pakietów można użyć różnych interfejsów. Aby uzyskać listę interfejsów, użyj:
$ sudo tcpdump -d
Lub po prostu użyj „dowolnego” z poleceniem „TCPDUMP”, aby uzyskać pakiety z aktywnego interfejsu. Aby rozpocząć przechwytywanie pakietów, użycie:
$ sudo tcpdump -interfejs dowolny
Powyższe polecenie śledzi pakiety ze wszystkich aktywnych interfejsów. Pakiety będą ciągle chwytane, dopóki nie otrzyma przerwy od użytkownika (CTRL-C).
Możemy również ograniczyć liczbę pakietów do przechwytywania za pomocą flagi „-C”, która oznacza „liczbę.„Aby uchwycić 3 pakiety, użyj:
$ sudo tcpdump -i dowolny -c3
Powyższe polecenie jest przydatne do filtrowania określonego pakietu. Ponadto rozwiązywanie problemów z problemami łączności wymaga tylko kilku początkowych pakietów.
„„TCPDUMP„Polecenie domyślnie przechwytuje pakiety i nazwy IP i portów, ale aby oczyścić, bałagan i ułatwić zrozumienie wyjścia; Nazwy można wyłączyć za pomocą „-N" I "-nn”Dla opcji portu:
$ sudo tcpdump -i dowolny -c3 -nn
Jak pokazano na powyższym wyjściu, nazwy IP i portów zostały wyjęte.
Jak zrozumieć informacje o przechwyconym pakiecie:
Aby dowiedzieć się o różnych dziedzinach przechwyconego pakietu, weźmy przykład pakietu TCP:
Pakiet może mieć różne pola, ale ogólne są wyświetlane powyżej. Pierwsze pole, „09:48:18.960683,”Reprezentuje czas, w którym pakiet jest odbierany. Następnie pojawiają się adresy IP; Pierwszy IP [216.58.209.130] jest źródłem IP i drugim IP [10.0.2.15.55812] to docelowy adres IP. Wtedy dostaniesz flagę [P.]; Lista typowych flag podano poniżej:
Flaga | Typ | Opis |
"." | Ack | Oznacza potwierdzenie |
S | Syn | Flaga do rozpoczęcia połączenia |
F | PŁETWA | Flaga dla zamkniętego połączenia |
P | NACISKAĆ | Wskazuje pchanie danych od nadawcy |
R | RST | Zresetowanie połączenia |
A następnie pojawia się numer sekwencji „SEQ 185: 255". Zarówno klient, jak i serwer używają 32-bitowego numeru sekwencji do utrzymania i monitorowania danych.
„„Ack”Jest flagą; Jeśli jest to 1, oznacza to, że numer potwierdzenia jest prawidłowy, a odbiornik oczekuje następnego bajtu.
Numer okna wskazuje rozmiar bufora. "Wygraj 65535”Oznacza ilość danych, które można buforować.
I ostatecznie nadchodzi długość [70] pakietu w bajtach, co jest różnicą „185: 255".
Filtrowanie pakietów w celu rozwiązania problemów sieciowych:
Narzędzie „TCPDUMP” przechwytuje setki pakietów, a większość z nich ma mniejsze znaczenie, co sprawia, że uzyskanie pożądanych informacji o rozwiązywaniu problemów jest znacznie złożone. W takim przypadku filtrowanie odgrywa swoją rolę. Na przykład, podczas rozwiązywania problemów, jeśli nie jesteś zainteresowany konkretnym rodzajem ruchu, możesz go filtrować za pomocą „TCPDump”, który jest wyposażony w pakiety filtrowania zgodnie z adresami IP, portów i protokołów.
Jak przechwycić pakiet za pomocą nazwy hosta za pomocą polecenia TCPDump:
Aby uzyskać pakiet tylko z określonego hosta, użyj:
$ sudo tcpdump -i dowolny -c4 host 10.0.2.15
Jeśli chcesz uzyskać tylko ruch w jedną stronę, użyj „src" I "dst„Opcje na miejscu„gospodarz."
Jak przechwycić pakiet za pomocą numeru portu za pomocą polecenia TCPDUMP:
Aby filtrować pakiety z numerem portu, użyj:
$ sudo tcpdump -i dowolny -c3 -nn port 443
„443” to numer portu HTTPS.
Jak uchwycić pakiet za pomocą protokołu za pomocą polecenia TCPDUMP:
Za pomocą polecenia „TCPDUMP” możesz filtrować pakiety zgodnie z dowolnym protokołem, takimi jak UDP, ICMP, ARP itp. Po prostu wpisz nazwę protokołu:
$ sudo tcpdump -i dowolny -c6 udp
Powyższe polecenia przechwytują tylko pakiety należące do protokołu „UDP”.
Jak łączyć opcje filtrowania za pomocą operatorów logicznych:
Różne opcje filtrowania można łączyć przy użyciu operatorów logicznych, takich jak „i/lub”:
$ sudo tcpdump -i dowolny -c6 -nn host 10.0.2.15 i port 443
Jak przechowywać przechwycone dane:
Zabrane dane można zapisać w pliku, aby monitorować go później, a dla tej opcji „-W” zostanie użyta, a „W” oznacza „zapisz”:
$ sudo tcpdump -i dowolny -c5 -w pakietdata.PCAP
Rozszerzenie pliku byłoby „.pcap ”, który oznacza„ przechwytywanie pakietów.„Po zakończeniu przechwytywania plik zostanie zapisany w lokalnym dysk. Ten plik nie można otworzyć ani odczytać za pomocą żadnego programu edytora tekstu. Aby to przeczytać, użyj „-R„Flaga z„ TCPDUMP ”:
$ tcpdump -r paketdata.PCAP
Wniosek:
„TCPDUMP” jest cennym i elastycznym narzędziem do przechwytywania i analizy ruchu sieciowego w celu rozwiązywania problemów sieciowych. Niniejszy Przewodnik jest poznanie podstawowego i zaawansowanego użycia narzędzia linii poleceń „TCPDUMP”. Ale jeśli jest to trudne, istnieje mniej złożony program oparty na GUI o nazwie „Wireshark”, który wykonuje prawie to samo zadanie, ale z różnymi dodatkowymi funkcjami.