Wireshark: wat is het, verkeersanalyse en het onderscheppen van pakketten

Auteur: IT Sectr Gepubliceerd: 2026-05-08 Leestijd: 9 min

Wireshark — de toonaangevende netwerkverkeersanalysator met open source code, gebruikt voor het in realtime onderscheppen en inspecteren van pakketten. Het hulpmiddel ondersteunt meer dan tweeduizend netwerkprotocollen en werkt op alle belangrijke platforms. Volgens Wireshark User Guide (2026) wordt de tool gebruikt voor netwerkdiagnose, API-debugging en beveiligingsanalyse in mobiele en webontwikkeling.

Belangrijkste punten

  • Wireshark — een gratis pakketsniffer met grafische interface voor het analyseren van netwerkverkeer.
  • Verkeerscapture gebeurt via de netwerkinterface in promiscuous modus op het niveau van de datalinklaag.
  • Filteren van pakketten op IP, poort, protocol en inhoud is geïmplementeerd via de BPF-taal en display filters.
  • HTTPS-analyse vereist het configureren van SSLKEYLOGFILE of een tussenliggende proxy om sessies te ontsleutelen.
  • Mobiele debugging is mogelijk via een combinatie met tcpdump op het apparaat en Remote Packet Capture.

Wat is Wireshark en hoe werkt het

Wireshark — een programma met open source code (GPLv2) dat datapakketten onderschept die door de netwerkinterface van de computer gaan. Het is gebaseerd op de libpcap-bibliotheek (Unix) of Npcap (Windows) voor capture op het niveau van de datalinklaag van het OSI-model.

Het principe van pakketcapture

De netwerkkaart ontvangt in de normale modus alleen frames die zijn geadresseerd aan het eigen MAC-adres. Wireshark schakelt de interface over naar de promiscuous modus, waarin het systeem alle passerende frames verwerkt, ongeacht de bestemming. Onderschepte gegevens worden via een ruwe socket raw socket naar de kernel gestuurd, waarna de libpcap-bibliotheek ze naar de gebruikersruimte kopieert voor analyse.

Verwerkingsarchitectuur

Wireshark gebruikt een modulaire architectuur: elk protocol is geïmplementeerd als een aparte dissector — een plugin die binaire gegevens parseert en in gestructureerde vorm weergeeft. Per 2026 zijn er in het programma dissectors voor 2 874 protocollen geïmplementeerd, waaronder HTTP/2, QUIC, gRPC en MQTT. Dissectors werken via het systeem van de protocolboom — elk pakket wordt laag voor laag geanalyseerd: van het Ethernet-frame tot de applicatielaag.

c
// Voorbeeld van een eenvoudige dissector voor een aangepast protocol
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;
}

Belangrijkste mogelijkheden van Wireshark

De grafische interface van Wireshark is verdeeld in drie panelen: de pakketlijst (packet list), protocoldetails (packet details) en de hex-dump (packet bytes). Elk paneel wordt in realtime bijgewerkt en ondersteunt interactieve navigatie — een klik op een pakketrij opent de volledige structuur.

Ondersteunde formaten en protocollen

Het hulpmiddel leest capturebestanden in de formaten pcap, pcapng, snoop en NetMon. Export is mogelijk naar JSON, XML, CSV en plain text. Tot de belangrijkste protocollen van de applicatielaag behoren: HTTP/HTTPS, DNS, DHCP, TCP, UDP, TLS, QUIC, WebSocket, MQTT, AMQP en Protobuf. Voor mobiele ontwikkeling is de ondersteuning van gRPC en HTTP/2 met multiplexing van streams bijzonder belangrijk.

Analyse-instrumenten

Ingebouwde hulpprogramma's omvatten Follow Stream (herstel van de volledige TCP/UDP/TLS-dialoog), IO Graph (grafiek van de doorvoer), gespreksstatistieken (Conversations) en de protocolhiërarchie (Protocol Hierarchy). De functie Flow Graph visualiseert de volgorde van pakketten tussen knooppunten, wat het zoeken naar oorzaken van vertragingen bij het debuggen van client-serverinteractie vereenvoudigt.

Hoe verkeer via Wireshark te onderscheppen

Het starten van de capture begint met het kiezen van de netwerkinterface — Ethernet, Wi-Fi, Bluetooth PAN of Loopback. Op Windows kan installatie van Npcap in de modus WinPcap API Compatible Mode nodig zijn. Voor capture op mobiele apparaten wordt Remote Packet Capture via een SSH-tunnel gebruikt.

Capture op een extern apparaat

Op een Android-apparaat wordt verkeer onderschept via tcpdump of PCAPdroid, waarna het bestand wordt overgebracht naar de werkcomputer. De opdracht voor externe capture via ADB:

bash
# Verkeer op Android vastleggen via ADB shell
adb shell tcpdump -i wlan0 -s 0 -w /sdcard/capture.pcap
# Kopiëren naar de computer
adb pull /sdcard/capture.pcap .

Loopback-verkeer vastleggen

Op Windows gaat localhost-verkeer (127.0.0.1) niet door de fysieke interface, dus Wireshark ziet het niet direct. De oplossing — installatie van Npcap met de optie Loopback Support of het omleiden van verkeer via RawCap. Op Linux en macOS wordt de loopback-interface (lo) zonder extra instellingen vastgelegd.

Pakketten filteren in Wireshark

Wireshark biedt twee soorten filters: capture filters (toegepast vóór de capture, op libpcap-niveau) en display filters (toegepast op reeds vastgelegde gegevens). Capture filters gebruiken de BPF-syntax (Berkeley Packet Filter), display filters — de eigen taal van Wireshark met automatische aanvulling.

Capture Filters (BPF)

BPF-filters worden geschreven in tcpdump-formaat en uitgevoerd in de kernel, waardoor pakketverlies bij hoge belasting wordt geminimaliseerd. Voorbeelden van filters:

Filter Doel
tcp port 80 Alleen HTTP-verkeer op de standaardpoort
host 192.168.1.1 Pakketten van een specifieke host
not arp Alle pakketten behalve ARP-aanvragen

Display Filters

Display filters worden achteraf toegepast en ondersteunen complexe voorwaarden met logische operatoren and, or, not. Voorbeeld: http.request.method == "POST" and ip.src == 192.168.0.100 filtert alleen POST-aanvragen van een specifiek IP. Filters kunnen als favoriet worden opgeslagen voor hergebruik.

Analyse van HTTP- en HTTPS-verkeer

HTTP-verkeer wordt in Wireshark in leesbare vorm weergegeven: aanvraagmethode, URI, headers en responsinhoud. De functie Follow TCP Stream verzamelt de volledige dialoog van client en server in één venster. Voor HTTPS is het ontsleutelen van TLS-sessies vereist, omdat de inhoud versleuteld is.

HTTPS ontsleutelen via SSLKEYLOGFILE

De browsers Chrome en Firefox ondersteunen de omgevingsvariabele SSLKEYLOGFILE, die TLS-sessiesleutels in een tekstbestand schrijft. Wireshark gebruikt dit bestand om records te ontsleutelen. De configuratie verloopt via Preferences → Protocols → TLS → (Pre)-Master-Secret log filename.

bash
# Chrome starten met het loggen van TLS-sleutels
export SSLKEYLOGFILE=/tmp/sslkeys.log
google-chrome .

# Na de capture het pad in Wireshark opgeven
# Edit → Preferences → Protocols → TLS → Log Filename

Analyse van gRPC en Protobuf

gRPC gebruikt HTTP/2 als transport en Protobuf voor serialisatie van gegevens. Wireshark ontsleutelt gRPC-berichten als er een .proto-bestand met structuurdefinities wordt aangeleverd. De Protobuf-dissector koppelt binaire velden aan namen uit het proto-bestand, wat cruciaal is bij het debuggen van een microservicesarchitectuur.

Mobiele apps debuggen met Wireshark

Mobiele debugging via Wireshark vereist het proxyn van het apparaatverkeer naar de computer. De meest betrouwbare methode — het creëren van een Wi-Fi-toegangspunt op de laptop en het omleiden van verkeer via NAT. Op Android is ook de VPN-methode met de app PCAPdroid zonder rootrechten beschikbaar.

Configuratie op Android zonder root

PCAPdroid creëert een lokale VPN-service die app-verkeer via een UDP-stream naar Wireshark omleidt. De app vereist geen root-toegang en ondersteunt filteren op individuele processen. De verkregen pcap-bestanden worden in Wireshark geopend voor volledige analyse.

bash
# Verkeer van PCAPdroid op de computer ontvangen
# PCAPdroid → Settings → PCAP dumper → UDP Exporter
nc -l -u 192.168.0.10 12345 > capture.pcap

Wireshark vergelijken met alternatieven

Wireshark — een universeel hulpmiddel, maar voor specifieke taken bestaan meer gespecialiseerde oplossingen. tcpdump is effectiever voor servercapture zonder grafische weergave, Charles Proxy is handiger voor analyse van HTTPS-verkeer, en Fiddler — voor inspectie van webverkeer met de mogelijkheid om aanvragen direct te wijzigen.

Charles Proxy vs Wireshark

Charles Proxy fungeert als tussenliggende proxyserver met de mogelijkheid om HTTPS te onderscheppen via eigen SSL-certificering. In tegenstelling tot Wireshark vereist Charles geen configuratie van SSLKEYLOGFILE en kan het verkeer niet alleen bekijken maar ook wijzigen — antwoorden vervangen, vertragingen emuleren en aanvragen herhalen.

Fiddler Everywhere

Fiddler — nog een proxy-hulpmiddel, populair in het .NET-ecosysteem. Het biedt een ingebouwde aanvraageditor, ondersteuning van AutoResponder voor mocks en een composer voor het maken van aangepaste aanvragen. Fiddler is beter geschikt voor analyse van browservwebverkeer, Wireshark — voor low-level netwerkanalyse.

Hulpmiddel Type HTTPS zonder sleutels Verkeer wijzigen
Wireshark Sniffer Nee (SSLKEYLOGFILE vereist) Alleen bekijken
Charles Proxy Ja (aangepast certificaat) Ja
Fiddler Proxy Ja (aangepast certificaat) Ja
tcpdump Sniffer Nee Alleen bekijken

Praktische tips voor het werken met Wireshark

Wireshark vereist inzicht in de basisprincipes van verkeerscapture. Een van de veelvoorkomende scenario's — het zoeken naar de bron van vertragingen in een mobiele app via het filter tcp.analysis.ack_rtt. Gebruik voor het zoeken naar trage HTTP-aanvragen de voorwaarde http.time groter dan 1.

Trage aanvragen zoeken

Filter voor trage HTTP-aanvragen op http.time groter dan 1 — Wireshark toont aanvragen met een responstijd van meer dan 1 seconde. Combineer met ip.addr voor analyse van een specifieke server. IO Graph met een interval van 1 seconde toont de belastingpieken duidelijk.

Export en rapportage

Wireshark ondersteunt export naar CSV, JSON en XML via het menu File. Gebruik voor automatische analyse tshark — de consoleversie die in CI/CD-pipelines werkt. Tshark ondersteunt dezelfde filters en uitvoerformaten als de grafische versie.

Praktische tips voor het werken met Wireshark

Wireshark vereist inzicht in de basisprincipes van verkeerscapture. Een van de veelvoorkomende scenario's — het zoeken naar de bron van vertragingen in een mobiele app via het filter tcp.analysis.ack_rtt. Gebruik voor het zoeken naar trage HTTP-aanvragen de voorwaarde http.time groter dan 1.

Trage aanvragen zoeken

Filter voor trage HTTP-aanvragen op http.time groter dan 1 — Wireshark toont aanvragen met een responstijd van meer dan 1 seconde. Combineer met ip.addr voor analyse van een specifieke server. IO Graph met een interval van 1 seconde toont de belastingpieken duidelijk.

Export en rapportage

Wireshark ondersteunt export naar CSV, JSON en XML via het menu File. Gebruik voor automatische analyse tshark — de consoleversie die in CI/CD-pipelines werkt. Tshark ondersteunt dezelfde filters en uitvoerformaten als de grafische versie.

Veelgestelde vragen

Hoe verschilt Wireshark van tcpdump?

Wireshark biedt een grafische interface met pakketvisualisatie, ingebouwde filters en statistieken. tcpdump — een console-hulpprogramma zonder GUI, handig voor servercapture via SSH. Wireshark kan tcpdump-bestanden lezen en omgekeerd.

Hoe HTTPS-verkeer onderscheppen in Wireshark?

Voor ontsleuteling is het bestand met TLS-sessiesleutels (SSLKEYLOGFILE) vereist. Chrome en Firefox exporteren de sleutels bij starten met een omgevingsvariabele. Het pad naar het bestand wordt opgegeven in de instellingen Protocols → TLS in Wireshark.

Waarom ziet Wireshark localhost-verkeer op Windows niet?

Loopback-verkeer op Windows gaat standaard niet door de Npcap-driver. De oplossing — installatie van Npcap met de optie Loopback Support ingeschakeld of het gebruik van het hulpprogramma RawCap voor het vastleggen van lokaal verkeer.

Kan Wireshark voor mobiele apps worden gebruikt?

Ja, door het verkeer naar de computer te proxyn. Android ondersteunt capture via PCAPdroid (zonder root) of tcpdump (met root). iOS vereist RVI (Remote Virtual Interface) via macOS of jailbreak voor capture.

Hoe pakketten op inhoud filteren in Wireshark?

Display filter frame contains zoekt een tekenreeks of hex-sequentie in het hele pakket. Voorbeeld: frame contains "password" vindt pakketten met de substring password in elk veld. Gebruik voor een exacte zoekopdracht op veld http.request.uri contains "api" .

Samenvatting

  • Wireshark — het belangrijkste hulpmiddel voor netwerkverkeersanalyse in ontwikkeling, met ondersteuning voor meer dan 2800 protocollen.
  • Pakketcapture gebeurt in promiscuous modus via de libpcap- of Npcap-bibliotheek op het niveau van datalinktoegang.
  • Filteren is verdeeld in capture filters (BPF, op kernelniveau) en display filters (Wireshark-taal, met automatische aanvulling).
  • HTTPS-ontsleuteling is beschikbaar via SSLKEYLOGFILE voor de browsers Chrome en Firefox.
  • Mobiele debugging wordt uitgevoerd via PCAPdroid (Android) of Remote Virtual Interface (iOS) zonder dat root nodig is.
  • gRPC en Protobuf worden ondersteund door het laden van .proto-bestanden voor deserialisatie van binaire gegevens.
  • Flow Graph en IO Graph helpen vertragingen te visualiseren en knelpunten in client-serverinteractie te vinden.

We ontwikkelen een mobiele applicatie turnkey

IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.

Bespreek het project

Lees ook