Wireshark: vad är det, trafikanalys och paketfångst

Författare: IT Sectr Publicerad: 2026-05-08 Lästid: 9 min

Wireshark — den ledande nätverkstrafikanalysatorn med öppen källkod, som används för att fånga och inspektera paket i realtid. Verktyget stöder över två tusen nätverksprotokoll och fungerar på alla större plattformar. Enligt Wireshark User Guide (2026) används verktyget för nätverksdiagnostik, API-felsökning och säkerhetsanalys i mobil- och webbutveckling.

Viktigast

  • Wireshark — en gratis paketsniffer med grafiskt gränssnitt för analys av nätverkstrafik.
  • Trafikfångst görs via nätverksgränssnittet i promiscuous-läge på datalänkskiktets nivå.
  • Filtrering av paket efter IP, port, protokoll och innehåll implementeras via BPF-språket och display filters.
  • HTTPS-analys kräver konfigurering av SSLKEYLOGFILE eller en mellanliggande proxy för att dekryptera sessioner.
  • Mobil felsökning är möjlig via kombination med tcpdump på enheten och Remote Packet Capture.

Vad är Wireshark och hur fungerar det

Wireshark — ett program med öppen källkod (GPLv2) som fångar datapaket som passerar genom datorns nätverksgränssnitt. Det bygger på libpcap-biblioteket (Unix) eller Npcap (Windows) för fångst på datalänkskiktet i OSI-modellen.

Principen för paketfångst

Nätverkskortet tar i normalt läge endast emot ramar som är adresserade till dess MAC-adress. Wireshark växlar gränssnittet till promiscuous-läge, där systemet bearbetar alla passerande ramar oavsett mottagare. Fångade data överförs till kärnan via en raw socket, varefter libpcap-biblioteket kopierar dem till användarutrymmet för analys.

Bearbetningsarkitektur

Wireshark använder en modulär arkitektur: varje protokoll är implementerat som en separat dissektor — en plugin som tolkar binära data och visar dem i strukturerad form. Per 2026 finns dissektorer för 2 874 protokoll implementerade i programmet, inklusive HTTP/2, QUIC, gRPC och MQTT. Dissektorerna fungerar via systemet med protokollträd — varje paket analyseras lager för lager: från Ethernet-ramen till applikationslagret.

c
// Exempel på en enkel dissektor för ett anpassat protokoll
static int dissect_custom(tvbuff_t *tvb, packet_info *pinfo,
        proto_tree *tree, void *data) {
    proto_item *ti = proto_tree_add_item(tree, hf_custom_field,
            tvb, 0, tvb_captured_length(tvb), ENC_NA);
    return 0;
}

Wiresharks viktigaste funktioner

Grafiskt gränssnitt Wireshark är uppdelat i tre paneler: paketlista (packet list), protokolldetaljer (packet details) och hex-dump (packet bytes). Varje panel uppdateras i realtid och stödjer interaktiv navigering — ett klick på en paketrad öppnar dess fullständiga struktur.

Stödda format och protokoll

Verktyget läser fångstfiler i formaten pcap, pcapng, snoop och NetMon. Export är möjlig till JSON, XML, CSV och plain text. Bland de viktigaste applikationslagerprotokollen finns: HTTP/HTTPS, DNS, DHCP, TCP, UDP, TLS, QUIC, WebSocket, MQTT, AMQP och Protobuf. För mobilutveckling är stödet för gRPC och HTTP/2 med multiplexering av dataströmmar särskilt viktigt.

Analysverktyg

Inbyggda verktyg omfattar Follow Stream (återställning av fullständig TCP/UDP/TLS-dialog), IO Graph (bandbreddsdiagram), samtalsstatistik (Conversations) och protokollhierarki (Protocol Hierarchy). Funktionen Flow Graph visualiserar paketens ordningsföljd mellan noder, vilket förenklar sökandet efter orsaker till fördröjningar vid felsökning av klient-serverinteraktion.

Hur man fångar trafik via Wireshark

Att starta fångst börjar med val av nätverksgränssnitt — Ethernet, Wi-Fi, Bluetooth PAN eller Loopback. På Windows kan installation av Npcap i läget WinPcap API Compatible Mode krävas. För fångst på mobila enheter används Remote Packet Capture via SSH-tunnel.

Fångst på en fjärrenhet

På en Android-enhet fångas trafiken via tcpdump eller PCAPdroid, varefter filen överförs till arbetsdatorn. Kommandot för fjärrfångst via ADB:

bash
# Fånga trafik på Android via ADB shell
adb shell tcpdump -i wlan0 -s 0 -w /sdcard/capture.pcap
# Kopiera till datorn
adb pull /sdcard/capture.pcap .

Fångst av loopback-trafik

På Windows passerar localhost-trafik (127.0.0.1) inte det fysiska gränssnittet, så Wireshark ser den inte direkt. Lösningen — installation av Npcap med alternativet Loopback Support eller omdirigering av trafiken via RawCap. På Linux och macOS fångas loopback-gränssnittet (lo) utan ytterligare inställningar.

Paketfiltrering i Wireshark

Wireshark erbjuder två typer av filter: capture filters (tillämpas före fångsten, på libpcap-nivå) och display filters (tillämpas på redan fångade data). Capture filters använder BPF-syntaxen (Berkeley Packet Filter), medan display filters använder Wiresharks eget språk med autokomplettering.

Capture Filters (BPF)

BPF-filter skrivs i tcpdump-format och utförs i kärnan, vilket minimerar paketförlust vid hög belastning. Exempel på filter:

Filter Syfte
tcp port 80 Endast HTTP-trafik på standardporten
host 192.168.1.1 Paket från en specifik värd
not arp Alla paket utom ARP-förfrågningar

Display Filters

Display filters tillämpas i efterhand och stödjer komplexa villkor med logiska operatorer and, or, not. Exempel: http.request.method == "POST" and ip.src == 192.168.0.100 filtrerar bara POST-förfrågningar från en specifik IP. Filter kan sparas som favoriter för återanvändning.

Analys av HTTP- och HTTPS-trafik

HTTP-trafik visas i Wireshark i läsbar form: förfrågningsmetod, URI, rubriker och svarsinnehåll. Funktionen Follow TCP Stream samlar klientens och serverns fullständiga dialog i ett fönster. För HTTPS krävs dekryptering av TLS-sessioner, eftersom innehållet är krypterat.

Dekryptering av HTTPS via SSLKEYLOGFILE

Webbläsarna Chrome och Firefox stödjer miljövariabeln SSLKEYLOGFILE, som skriver TLS-sessionsnycklar till en textfil. Wireshark använder denna fil för att dekryptera posterna. Konfigureringen görs via Preferences → Protocols → TLS → (Pre)-Master-Secret log filename.

bash
# Starta Chrome med inspelning av TLS-nycklar
export SSLKEYLOGFILE=/tmp/sslkeys.log
google-chrome .

# Efter fångsten ange sökvägen i Wireshark
# Edit → Preferences → Protocols → TLS → Log Filename

Analys av gRPC och Protobuf

gRPC använder HTTP/2 som transport och Protobuf för serialisering av data. Wireshark dekrypterar gRPC-meddelanden om en .proto-fil med strukturdefinitioner tillhandahålls. Protobuf-dissektorn matchar binära fält mot namnen från proto-filen, vilket är avgörande vid felsökning av mikrotjänstarkitektur.

Felsökning av mobilappar med Wireshark

Mobil felsökning via Wireshark kräver att enhetens trafik proxas till datorn. Den mest tillförlitliga metoden — att skapa en Wi-Fi-åtkomstpunkt på datorn och omdirigera trafiken via NAT. På Android finns också VPN-metoden med appen PCAPdroid utan root-rättigheter.

Konfigurering på Android utan root

PCAPdroid skapar en lokal VPN-tjänst som omdirigerar apparnas trafik till Wireshark via en UDP-ström. Appen kräver inte root-åtkomst och stödjer filtrering efter enskilda processer. De erhållna pcap-filerna öppnas i Wireshark för fullständig analys.

bash
# Ta emot trafik från PCAPdroid på datorn
# PCAPdroid → Settings → PCAP dumper → UDP Exporter
nc -l -u 192.168.0.10 12345 > capture.pcap

Jämförelse av Wireshark med alternativ

Wireshark — ett universellt verktyg, men för specifika uppgifter finns mer specialiserade lösningar. tcpdump är effektivare för serverfångst utan grafik, Charles Proxy är bekvämare för analys av HTTPS-trafik och Fiddler — för inspektion av webbtrafik med möjlighet att modifiera förfrågningar i farten.

Charles Proxy vs Wireshark

Charles Proxy fungerar som en mellanliggande proxyserver med möjlighet att fånga HTTPS via egen SSL-certifiering. Till skillnad från Wireshark kräver Charles ingen konfigurering av SSLKEYLOGFILE och kan inte bara visa utan också modifiera trafiken — byta ut svar, emulera fördröjningar och upprepa förfrågningar.

Fiddler Everywhere

Fiddler — ännu ett proxyverktyg, populärt i .NET-ekosystemet. Det erbjuder en inbyggd förfrågningsredigerare, stöd för AutoResponder för mockar och en kompositör för att skapa anpassade förfrågningar. Fiddler passar bättre för analys av webbtrafik från webbläsaren, medan Wireshark — för lågnivå nätverksanalys.

Verktyg Typ HTTPS utan nycklar Ändra trafik
Wireshark Sniffer Nej (kräver SSLKEYLOGFILE) Endast visning
Charles Proxy Ja (anpassat certifikat) Ja
Fiddler Proxy Ja (anpassat certifikat) Ja
tcpdump Sniffer Nej Endast visning

Praktiska tips för att arbeta med Wireshark

Wireshark kräver förståelse för grundprinciperna för trafikfångst. Ett av de vanliga scenarierna — att hitta källan till fördröjningar i en mobilapp via filtret tcp.analysis.ack_rtt. För att hitta långsamma HTTP-förfrågningar, använd villkoret http.time större än 1.

Hitta långsamma förfrågningar

För att hitta långsamma HTTP-förfrågningar, filtrera http.time större än 1 — Wireshark visar förfrågningar med en svarstid på mer än 1 sekund. Kombinera med ip.addr för analys av en specifik server. IO Graph med ett intervall på 1 sekund visar tydligt belastningstopparna.

Export och rapportering

Wireshark stödjer export till CSV, JSON och XML via menyn File. För automatisk analys använd tshark — konsolversionen som fungerar i CI/CD-pipelines. Tshark stödjer samma filter och utdataformat som den grafiska versionen.

Praktiska tips för att arbeta med Wireshark

Wireshark kräver förståelse för grundprinciperna för trafikfångst. Ett av de vanliga scenarierna — att hitta källan till fördröjningar i en mobilapp via filtret tcp.analysis.ack_rtt. För att hitta långsamma HTTP-förfrågningar, använd villkoret http.time större än 1.

Hitta långsamma förfrågningar

För att hitta långsamma HTTP-förfrågningar, filtrera http.time större än 1 — Wireshark visar förfrågningar med en svarstid på mer än 1 sekund. Kombinera med ip.addr för analys av en specifik server. IO Graph med ett intervall på 1 sekund visar tydligt belastningstopparna.

Export och rapportering

Wireshark stödjer export till CSV, JSON och XML via menyn File. För automatisk analys använd tshark — konsolversionen som fungerar i CI/CD-pipelines. Tshark stödjer samma filter och utdataformat som den grafiska versionen.

Vanliga frågor

Hur skiljer sig Wireshark från tcpdump?

Wireshark erbjuder ett grafiskt gränssnitt med paketvisualisering, inbyggda filter och statistik. tcpdump — ett konsolverktyg utan GUI, lämpligt för serverfångst via SSH. Wireshark kan läsa tcpdump-filer och tvärtom.

Hur fångar jag HTTPS-trafik i Wireshark?

För dekryptering krävs filen med TLS-sessionsnycklar (SSLKEYLOGFILE). Chrome och Firefox exporterar nycklarna när de startas med en miljövariabel. Sökvägen till filen anges i inställningarna Protocols → TLS i Wireshark.

Varför ser inte Wireshark localhost-trafik på Windows?

Loopback-trafik på Windows passerar som standard inte Npcap-drivrutinen. Lösningen — installation av Npcap med alternativet Loopback Support aktiverat eller användning av verktyget RawCap för att fånga lokal trafik.

Kan Wireshark användas för mobilappar?

Ja, genom att proxy trafiken till datorn. Android stödjer fångst via PCAPdroid (utan root) eller tcpdump (med root). iOS kräver RVI (Remote Virtual Interface) via macOS eller jailbreak för fångst.

Hur filtrerar jag paket efter innehåll i Wireshark?

Display filter frame contains söker efter en sträng eller hex-sekvens i hela paketet. Exempel: frame contains "password" hittar paket med delsträngen password i valfritt fält. För exakt sökning efter fält, använd http.request.uri contains "api" .

Sammanfattning

  • Wireshark — det främsta verktyget för nätverkstrafikanalys i utveckling, med stöd för över 2800 protokoll.
  • Paketfångst sker i promiscuous-läge via libpcap- eller Npcap-biblioteket på nivån för datalänkåtkomst.
  • Filtrering delas in i capture filters (BPF, på kärnnivå) och display filters (Wireshark-språket, med autokomplettering).
  • HTTPS-dekryptering är tillgänglig via SSLKEYLOGFILE för webbläsarna Chrome och Firefox.
  • Mobil felsökning genomförs via PCAPdroid (Android) eller Remote Virtual Interface (iOS) utan behov av root.
  • gRPC och Protobuf stöds genom att ladda .proto-filer för avserialisering av binära data.
  • Flow Graph och IO Graph hjälper till att visualisera fördröjningar och hitta flaskhalsar i klient-serverinteraktionen.

Vi utvecklar en mobil applikation nyckelfärdigt

IT Sectr skapar iOS- och Android-applikationer för startups och företag sedan 2017. Vi ger dig råd och föreslår den bästa lösningen.

Diskutera projektet

Läs också