tcpdump
Utvecklare | Tcpdump-teamet |
---|---|
Initial release | 1988 |
Stabil frisättning | 4.99.3 / 12 januari 2023
|
Förvar | tcpdump på GitHub |
Skrivet i | C (programmeringsspråk) |
Operativ system | Linux , Solaris , FreeBSD , NetBSD , OpenBSD , DragonFly BSD , macOS , Android och ytterligare *NIX- system, Windows |
Typ | Paketanalysator |
Licens | BSD-licens |
Hemsida |
tcpdump är ett datanätverkspaketanalysatorprogram som körs under ett kommandoradsgränssnitt . Det tillåter användaren att visa TCP/IP och andra paket som sänds eller tas emot över ett nätverk som datorn är ansluten till. Distribuerad under BSD-licensen är tcpdump fri programvara .
Tcpdump fungerar på de flesta Unix-liknande operativsystem : Linux , Solaris , FreeBSD , DragonFly BSD , NetBSD , OpenBSD , OpenWrt , macOS , HP-UX 11i och AIX . I dessa system använder tcpdump libpcap för att fånga paket. Porten för tcpdump för Windows kallas WinDump ; den använder WinPcap , Windows-versionen av libpcap.
Historia
tcpdump skrevs ursprungligen 1988 av Van Jacobson , Sally Floyd , Vern Paxson och Steven McCanne som vid den tiden arbetade i Lawrence Berkeley Laboratory Network Research Group. I slutet av 1990-talet fanns det många versioner av tcpdump distribuerade som en del av olika operativsystem, och många patchar som inte var väl koordinerade. Michael Richardson (mcr) och Bill Fenner skapade www.tcpdump.org 1999.
Vanliga användningsområden
tcpdump skriver ut innehållet i nätverkspaket. Den kan läsa paket från ett nätverkskort eller från en tidigare skapad sparad paketfil. tcpdump kan skriva paket till standardutdata eller en fil.
Det är också möjligt att använda tcpdump för det specifika syftet att fånga upp och visa kommunikation från en annan användare eller dator. En användare med nödvändiga privilegier på ett system som fungerar som en router eller gateway genom vilken okrypterad trafik som Telnet eller HTTP -pass kan använda tcpdump för att se inloggnings-ID:n, lösenord, webbadresser och innehåll på webbplatser som visas eller annan okrypterad information.
Användaren kan valfritt använda ett BPF -baserat filter för att begränsa antalet paket som ses av tcpdump; detta gör utdata mer användbar i nätverk med hög trafikvolym.
Exempel på tillgängliga infångningsgränssnitt på ett Linux-system:
$ tcpdump -D 1.eth0 [Up, Running, Connected] 2.any (Pseudo-enhet som fångar på alla gränssnitt) [Up, Running] 3.lo [Up, Running, Loopback] 4.bluetooth-monitor (Bluetooth Linux Monitor) [Trådlös] 5.usbmon2 (Rå USB-trafik, bussnummer 2) 6.usbmon1 (Rå USB-trafik, bussnummer 1) 7.usbmon0 (Rå USB-trafik, alla USB-bussar) [ingen] 8.nflog (Linux-nätfilter log (NFLOG) gränssnitt) [inget] 9.nfqueue (Linux netfilter kö (NFQUEUE) gränssnitt) [inget] 10.dbus-system (D-Bus systembuss) [ingen] 11.dbus-session (D-Bus session buss ) [ingen] 12.bluetooth0 (Bluetooth-adapter nummer 0) 13.eth1 [ingen, frånkopplad]
Privilegier krävs
I vissa Unix-liknande operativsystem måste en användare ha superanvändarbehörigheter för att använda tcpdump eftersom paketinfångningsmekanismerna på dessa system kräver förhöjda privilegier. Men alternativet -Z kan användas för att ta bort privilegier till en specifik oprivilegierad användare efter att fånga har ställts in. I andra Unix-liknande operativsystem kan paketfångningsmekanismen konfigureras så att icke-privilegierade användare kan använda den; om det görs krävs inga superanvändarbehörigheter.
Se även
- Tcptrace , ett verktyg för att analysera loggar som produceras av tcpdump
- EtherApe , ett nätverkskartläggningsverktyg som förlitar sig på att sniffa trafik
- Ngrep , ett verktyg som kan matcha reguljära uttryck inom nätverkspaketets nyttolaster
- netsniff-ng , en gratis verktygslåda för Linux-nätverk
- Wireshark , ett GUI-baserat alternativ till tcpdump