Med Linux-kom­man­do­en tcpdump kan du analysere de pakker, der sendes i dit netværk. Der findes en lang række indstil­lin­ger og filtre, som du kan bruge til at optimere analysen yder­li­ge­re.

Hvad er Linux tcpdump?

Hvis du vil analysere din net­værk­stra­fik på Linux og eventuelt løse net­værks­pro­ble­mer, er tcpdump et vær­di­fuldt værktøj. Kom­man­do­linje­pro­gram­met er for­u­din­stal­le­ret på næsten alle al­min­de­li­ge Linux-di­stri­bu­tio­ner, f.eks. Debian eller Ubuntu, og overfører op­lys­nin­ger om da­ta­pak­ker, der sendes eller modtages på dit netværk. På trods af navnet er Linux tcpdump ikke kun egnet til TCP-pakker, men kan også analysere UDP- og ICMP-pakker. For at bruge kom­man­do­en skal du dog have root-ret­tig­he­der.

Hvordan fungerer kom­man­do­en tcpdump?

Den analyse, som tcpdump udfører, kaldes ofte for »sniffing«. Med Linux-kom­man­do­en tcpdump kan du angive, hvilket net­værks­kort pro­gram­met skal overvåge. For at tilpasse og optimere processen tilbyder tcpdump en lang række filtre. Kom­man­do­en udføres fra kom­man­do­linj­en, og den re­sul­te­ren­de analyse vises derefter.

Hvordan er syntaksen i tcpdump?

Syntaksen i Linux-versionen af tcpdump er meget enkel og ser således ud:

$ tcpdump [Options] [Filter]
bash

Selvom det ikke er ob­liga­to­risk at angive indstil­lin­ger, anbefales det at gøre det for at sikre, at tcpdump bruger det rigtige net­værks­kort. Desuden er brugen af filtre valgfri, men meget nyttig. Uden filtre ana­ly­se­rer tcpdump alle pakker fra alle værter, hvilket hurtigt kan blive uover­sku­e­ligt og for­vir­ren­de.

Hvilke indstil­lin­ger og filtre findes der i Linux-kom­man­do­en tcpdump?

Der findes mange indstil­lin­ger og filtre til tcpdump. De vigtigste er:

  • -A: Viser indholdet af en pakke som ASCII.
  • -c [Antal]: tcpdump afsluttes au­to­ma­tisk, når et bestemt antal pakker er blevet ana­ly­se­ret.
  • -D: Med denne indstil­ling vises alle til­gæn­ge­li­ge græn­se­fla­der.
  • -i [Græn­se­fla­de]: Med denne indstil­ling bestemmer du, hvilken græn­se­fla­de der skal optages.
  • -s [Antal]: Denne indstil­ling bestemmer, hvor mange bytes der skal optages pr. pakke.

Du kan bruge disse filtre til tcpdump:

  • dst: Kun pakker, hvis desti­na­tion har den angivne værdi, ana­ly­se­res. Dette kan være en vært, et netværk, en port eller et po­r­tin­ter­val.
  • host: Filtret sikrer, at der kun tages højde for pakker, der har en bestemt IP-adresse eller al­ter­na­tivt et bestemt værtsnavn som kilde eller desti­na­tion.
  • net: Dette filter tager kun hensyn til pakker, der har en IP-adresse fra et angivet net­værk­s­om­rå­de som kilde eller desti­na­tion.
  • port: Brug dette filter til at angive en bestemt port mellem 0 og 65535, der ude­luk­ken­de skal ana­ly­se­res.
  • portrange: Dette filter in­de­hol­der et po­r­tin­ter­val mellem 0 og 65535.
  • proto: Dette filter tager kun hensyn til pakker med en bestemt net­værks­pro­tokol. Filtret kan have følgende værdier: arp, decnet, ether, fddi, ip, ip6, rarp, tcp, udp eller wlan.
  • src: Til analyse af pakker baseret på spe­ci­fik­ke kriterier såsom vært, netværk, port eller po­r­tin­ter­val.

Eksempler på brug af kom­man­do­en tcpdump

Til sidst vil vi vise dig, hvordan du bruger tcpdump. I vores eksempler bruger vi Linux-kom­man­do­en sudo.

$ sudo tcpdump -D
bash

Se, hvilke net­værks­græn­se­fla­der der er til­gæn­ge­li­ge.

$ sudo tcpdump -i wlx14a3c782966b
bash

Analyser kun græn­se­fla­den med det angivne navn.

$ sudo tcpdump -c 5 -i wlx14a3c782966b
bash

På den måde får du tcpdump til kun at medtage fem pakker.

Gå til ho­ved­me­nu­en