Wireshark — penganalisis lalu lintas jaringan terkemuka dengan kode sumber terbuka, digunakan untuk menyadap dan memeriksa paket secara real-time. Alat ini mendukung lebih dari dua ribu protokol jaringan dan bekerja di semua platform utama. Menurut Wireshark User Guide (2026), utilitas ini digunakan untuk diagnosis jaringan, debugging API, dan analisis keamanan dalam pengembangan seluler dan web.
Hal utama
Wireshark — program dengan kode sumber terbuka (GPLv2) yang menyadap paket data yang melewati antarmuka jaringan komputer. Program ini didasarkan pada pustaka libpcap (Unix) atau Npcap (Windows) untuk penangkapan pada tingkat lapisan data-link model OSI.
Kartu jaringan dalam mode normal hanya menerima frame yang ditujukan ke alamat MAC-nya. Wireshark mengalihkan antarmuka ke mode promiscuous, di mana sistem memproses semua frame yang lewat tanpa memperhatikan penerima. Data yang disadap dikirim ke kernel melalui raw socket, setelah itu pustaka libpcap menyalinnya ke ruang pengguna untuk dianalisis.
Wireshark menggunakan arsitektur modular: setiap protokol diimplementasikan sebagai dissector terpisah — plugin yang mengurai data biner dan menampilkannya dalam bentuk terstruktur. Per tahun 2026, program ini memiliki dissector untuk 2 874 protokol, termasuk HTTP/2, QUIC, gRPC, dan MQTT. Dissector bekerja melalui sistem pohon protokol — setiap paket dianalisis berlapis: dari frame Ethernet hingga lapisan aplikasi.
// Contoh dissector sederhana untuk protokol khusus
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;
} Antarmuka grafis Wireshark terbagi menjadi tiga panel: daftar paket (packet list), detail protokol (packet details), dan dump hex (packet bytes). Setiap panel diperbarui secara real-time dan mendukung navigasi interaktif — klik pada baris paket akan membuka struktur lengkapnya.
Alat ini membaca file penangkapan dalam format pcap, pcapng, snoop, dan NetMon. Ekspor dimungkinkan ke JSON, XML, CSV, dan plain text. Di antara protokol utama lapisan aplikasi: HTTP/HTTPS, DNS, DHCP, TCP, UDP, TLS, QUIC, WebSocket, MQTT, AMQP, dan Protobuf. Untuk pengembangan seluler, dukungan gRPC dan HTTP/2 dengan multipleksing aliran sangat penting.
Utilitas bawaan meliputi Follow Stream (pemulihan dialog TCP/UDP/TLS lengkap), IO Graph (grafik bandwidth), statistik percakapan (Conversations), dan hierarki protokol (Protocol Hierarchy). Fungsi Flow Graph memvisualisasikan urutan paket antar node, yang menyederhanakan pencarian penyebab keterlambatan saat debugging interaksi klien-server.
Memulai penangkapan diawali dengan memilih antarmuka jaringan — Ethernet, Wi-Fi, Bluetooth PAN, atau Loopback. Di Windows mungkin diperlukan instalasi Npcap dalam mode WinPcap API Compatible Mode. Untuk penangkapan di perangkat seluler digunakan Remote Packet Capture melalui tunnel SSH.
Di perangkat Android, lalu lintas disadap melalui tcpdump atau PCAPdroid, kemudian file ditransfer ke komputer kerja. Perintah untuk penangkapan jarak jauh melalui ADB:
# Menangkap lalu lintas di Android melalui ADB shell
adb shell tcpdump -i wlan0 -s 0 -w /sdcard/capture.pcap
# Menyalin ke komputer
adb pull /sdcard/capture.pcap . Di Windows, lalu lintas localhost (127.0.0.1) tidak melewati antarmuka fisik, sehingga Wireshark tidak melihatnya secara langsung. Solusinya — instalasi Npcap dengan opsi Loopback Support atau mengarahkan lalu lintas melalui RawCap. Di Linux dan macOS, antarmuka loopback (lo) ditangkap tanpa pengaturan tambahan.
Wireshark menawarkan dua jenis filter: capture filters (diterapkan sebelum penangkapan, pada tingkat libpcap) dan display filters (diterapkan pada data yang sudah ditangkap). Capture filters menggunakan sintaks BPF (Berkeley Packet Filter), sedangkan display filters — bahasa khusus Wireshark dengan pelengkapan otomatis.
Filter BPF ditulis dalam format tcpdump dan dijalankan di kernel, yang meminimalkan kehilangan paket saat beban tinggi. Contoh filter:
| Filter | Tujuan |
|---|---|
| tcp port 80 | Hanya lalu lintas HTTP di port standar |
| host 192.168.1.1 | Paket dari host tertentu |
| not arp | Semua paket kecuali permintaan ARP |
Display filters diterapkan setelahnya dan mendukung kondisi kompleks dengan operator logika and, or, not. Contoh: http.request.method == "POST" and ip.src == 192.168.0.100 akan memfilter hanya permintaan POST dari IP tertentu. Filter dapat disimpan sebagai favorit untuk digunakan kembali.
Lalu lintas HTTP ditampilkan di Wireshark dalam bentuk yang dapat dibaca: metode permintaan, URI, header, dan isi respons. Fungsi Follow TCP Stream mengumpulkan dialog lengkap klien dan server dalam satu jendela. Untuk HTTPS diperlukan dekripsi sesi TLS, karena kontennya terenkripsi.
Browser Chrome dan Firefox mendukung variabel lingkungan SSLKEYLOGFILE, yang menulis kunci sesi TLS ke file teks. Wireshark menggunakan file ini untuk mendekripsi record. Konfigurasi dilakukan melalui Preferences → Protocols → TLS → (Pre)-Master-Secret log filename.
# Menjalankan Chrome dengan perekaman kunci TLS
export SSLKEYLOGFILE=/tmp/sslkeys.log
google-chrome .
# Setelah penangkapan, tentukan jalurnya di Wireshark
# Edit → Preferences → Protocols → TLS → Log Filename gRPC menggunakan HTTP/2 sebagai transport dan Protobuf untuk serialisasi data. Wireshark mendekripsi pesan gRPC jika file .proto dengan definisi struktur disediakan. Dissector Protobuf mencocokkan bidang biner dengan nama dari file proto, yang sangat penting saat debugging arsitektur microservice.
Debugging seluler melalui Wireshark memerlukan proxy lalu lintas perangkat ke komputer. Metode paling andal — membuat titik akses Wi-Fi di laptop dan mengarahkan lalu lintas melalui NAT. Di Android juga tersedia metode VPN dengan aplikasi PCAPdroid tanpa hak root.
PCAPdroid membuat layanan VPN lokal yang mengarahkan lalu lintas aplikasi ke Wireshark melalui aliran UDP. Aplikasi ini tidak memerlukan akses root dan mendukung pemfilteran berdasarkan proses individual. File pcap yang diperoleh dibuka di Wireshark untuk analisis lengkap.
# Menerima lalu lintas dari PCAPdroid di komputer
# PCAPdroid → Settings → PCAP dumper → UDP Exporter
nc -l -u 192.168.0.10 12345 > capture.pcap Wireshark — alat universal, tetapi untuk tugas spesifik ada solusi yang lebih khusus. tcpdump lebih efektif untuk penangkapan server tanpa grafis, Charles Proxy lebih nyaman untuk analisis lalu lintas HTTPS, dan Fiddler — untuk inspeksi lalu lintas web dengan kemampuan memodifikasi permintaan secara langsung.
Charles Proxy bertindak sebagai server proxy perantara dengan kemampuan menyadap HTTPS melalui sertifikasi SSL sendiri. Berbeda dengan Wireshark, Charles tidak memerlukan konfigurasi SSLKEYLOGFILE dan dapat tidak hanya melihat, tetapi juga mengubah lalu lintas — mengganti respons, mengemulasi keterlambatan, dan mengulang permintaan.
Fiddler — alat proxy lain yang populer di ekosistem .NET. Ia menyediakan editor permintaan bawaan, dukungan AutoResponder untuk mock, dan composer untuk membuat permintaan khusus. Fiddler lebih cocok untuk analisis lalu lintas web browser, sedangkan Wireshark — untuk analisis jaringan tingkat rendah.
| Alat | Jenis | HTTPS tanpa kunci | Mengubah lalu lintas |
|---|---|---|---|
| Wireshark | Sniffer | Tidak (perlu SSLKEYLOGFILE) | Hanya lihat |
| Charles | Proxy | Ya (sertifikat khusus) | Ya |
| Fiddler | Proxy | Ya (sertifikat khusus) | Ya |
| tcpdump | Sniffer | Tidak | Hanya lihat |
Wireshark memerlukan pemahaman prinsip dasar penangkapan lalu lintas. Salah satu skenario yang umum — mencari sumber keterlambatan di aplikasi seluler melalui filter tcp.analysis.ack_rtt. Untuk mencari permintaan HTTP lambat, gunakan kondisi http.time lebih besar dari 1.
Untuk mencari permintaan HTTP lambat, filter http.time lebih besar dari 1 — Wireshark akan menampilkan permintaan dengan waktu respons lebih dari 1 detik. Kombinasikan dengan ip.addr untuk analisis server tertentu. IO Graph dengan interval 1 detik akan menunjukkan puncak beban dengan jelas.
Wireshark mendukung ekspor ke CSV, JSON, dan XML melalui menu File. Untuk analisis otomatis gunakan tshark — versi konsol yang bekerja di pipeline CI/CD. Tshark mendukung filter dan format output yang sama dengan versi grafis.
Wireshark memerlukan pemahaman prinsip dasar penangkapan lalu lintas. Salah satu skenario yang umum — mencari sumber keterlambatan di aplikasi seluler melalui filter tcp.analysis.ack_rtt. Untuk mencari permintaan HTTP lambat, gunakan kondisi http.time lebih besar dari 1.
Untuk mencari permintaan HTTP lambat, filter http.time lebih besar dari 1 — Wireshark akan menampilkan permintaan dengan waktu respons lebih dari 1 detik. Kombinasikan dengan ip.addr untuk analisis server tertentu. IO Graph dengan interval 1 detik akan menunjukkan puncak beban dengan jelas.
Wireshark mendukung ekspor ke CSV, JSON, dan XML melalui menu File. Untuk analisis otomatis gunakan tshark — versi konsol yang bekerja di pipeline CI/CD. Tshark mendukung filter dan format output yang sama dengan versi grafis.
Pertanyaan yang sering diajukan
Wireshark menyediakan antarmuka grafis dengan visualisasi paket, filter bawaan, dan statistik. tcpdump — utilitas konsol tanpa GUI, nyaman untuk penangkapan server melalui SSH. Wireshark dapat membaca file tcpdump dan sebaliknya.
Untuk dekripsi diperlukan file kunci sesi TLS (SSLKEYLOGFILE). Chrome dan Firefox mengekspor kunci saat dijalankan dengan variabel lingkungan. Jalur ke file ditentukan di pengaturan Protocols → TLS di Wireshark.
Lalu lintas loopback di Windows tidak melewati driver Npcap secara default. Solusinya — instalasi Npcap dengan opsi Loopback Support aktif atau penggunaan utilitas RawCap untuk menangkap lalu lintas lokal.
Ya, melalui proxy lalu lintas ke komputer. Android mendukung penangkapan melalui PCAPdroid (tanpa root) atau tcpdump (dengan root). iOS memerlukan RVI (Remote Virtual Interface) melalui macOS atau jailbreak untuk penangkapan.
Display filter frame contains mencari string atau urutan hex di seluruh paket. Contoh: frame contains "password" akan menemukan paket dengan substring password di bidang apa pun. Untuk pencarian tepat berdasarkan bidang, gunakan http.request.uri contains "api" .
Ringkasan
Kami akan mengembangkan aplikasi seluler turnkey
IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.
Baca juga