Wireshark: ano ito, pagsusuri ng trapiko at pagharang ng mga packet

May-akda: IT Sectr Nai-publish: 2026-05-08 Oras ng pagbabasa: 9 min

Wireshark — ang nangungunang analyzer ng network traffic na may open source na code, ginagamit para sa pagharang at pag-inspeksyon ng mga packet sa real time. Ang tool ay sumusuporta sa higit sa dalawang libong network protocols at gumagana sa lahat ng pangunahing platform. Ayon sa Wireshark User Guide (2026), ang utility ay ginagamit para sa diagnosis ng mga network, pag-debug ng API, at pagsusuri ng seguridad sa mobile at web development.

Mga pangunahing punto

  • Wireshark — isang libreng packet sniffer na may graphical interface para sa pagsusuri ng network traffic.
  • Pagkuha ng trapiko ay ginagawa sa pamamagitan ng network interface sa promiscuous mode sa antas ng data-link layer.
  • Pag-filter ng mga packet ayon sa IP, port, protocol, at nilalaman ay ipinatupad sa pamamagitan ng BPF language at display filters.
  • Pagsusuri ng HTTPS ay nangangailangan ng pag-configure ng SSLKEYLOGFILE o isang intermediate proxy para sa pag-dekript ng mga session.
  • Mobile debugging ay posible sa pamamagitan ng kombinasyon ng tcpdump sa device at Remote Packet Capture.

Ano ang Wireshark at paano ito gumagana

Wireshark — isang program na may open source code (GPLv2) na humaharang ng mga data packet na dumadaan sa network interface ng computer. Batay ito sa libpcap (Unix) o Npcap (Windows) na library para sa pagkuha sa antas ng data-link layer ng OSI model.

Prinsipyo ng pagkuha ng mga packet

Ang network card sa normal na mode ay tumatanggap lamang ng mga frame na naka-address sa MAC address nito. Inililipat ng Wireshark ang interface sa promiscuous mode, kung saan pinoproseso ng system ang lahat ng dumadaang frame anuman ang tatanggap. Ang mga naharang na data ay ipinapadala sa kernel sa pamamagitan ng raw socket, pagkatapos ay kinokopya ng libpcap library ang mga ito sa user space para sa pagsusuri.

Arkitektura ng pagproseso

Gumagamit ang Wireshark ng modular architecture: bawat protocol ay ipinatupad bilang isang hiwalay na dissector — isang plugin na nag-parse ng binary data at ipinapakita ang mga ito sa structured na anyo. Noong 2026, ang programa ay may mga dissector para sa 2 874 na protocol, kabilang ang HTTP/2, QUIC, gRPC, at MQTT. Gumagana ang mga dissector sa pamamagitan ng protocol tree system — bawat packet ay sinusuri nang layer-by-layer: mula sa Ethernet frame hanggang sa application layer.

c
// Halimbawa ng isang simpleng dissector para sa custom na 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;
}

Pangunahing kakayahan ng Wireshark

Graphical interface ng Wireshark ay nahahati sa tatlong panel: ang listahan ng packet (packet list), mga detalye ng protocol (packet details), at ang hex dump (packet bytes). Ang bawat panel ay ina-update sa real time at sumusuporta sa interactive navigation — ang pag-click sa isang packet row ay nagbubukas ng kumpletong istraktura nito.

Mga sinusuportahang format at protocol

Binabasa ng tool ang mga capture file sa mga format na pcap, pcapng, snoop, at NetMon. Posible ang pag-export sa JSON, XML, CSV, at plain text. Kabilang sa mga pangunahing protocol ng application layer: HTTP/HTTPS, DNS, DHCP, TCP, UDP, TLS, QUIC, WebSocket, MQTT, AMQP, at Protobuf. Para sa mobile development, partikular na mahalaga ang suporta sa gRPC at HTTP/2 na may multiplexing ng mga stream.

Mga tool sa pagsusuri

Kasama sa mga built-in na utility ang Follow Stream (pagbawi ng kumpletong TCP/UDP/TLS na diyalogo), IO Graph (graph ng bandwidth), mga istatistika ng pag-uusap (Conversations), at ang hierarchy ng protocol (Protocol Hierarchy). Ang function na Flow Graph ay nagbibiswalisa ng pagkakasunod-sunod ng mga packet sa pagitan ng mga node, na nagpapadali sa paghahanap ng mga sanhi ng pagkaantala sa pag-debug ng client-server interaction.

Paano harangin ang trapiko gamit ang Wireshark

Pagsisimula ng pagkuha ay nagsisimula sa pagpili ng network interface — Ethernet, Wi-Fi, Bluetooth PAN, o Loopback. Sa Windows, maaaring kailanganin ang pag-install ng Npcap sa WinPcap API Compatible Mode. Para sa pagkuha sa mga mobile device, ginagamit ang Remote Packet Capture sa pamamagitan ng SSH tunnel.

Pagkuha sa isang malayong device

Sa isang Android device, ang trapiko ay hinaharang sa pamamagitan ng tcpdump o PCAPdroid, at pagkatapos ay inililipat ang file sa work computer. Ang command para sa remote capture sa pamamagitan ng ADB:

bash
# Pagkuha ng trapiko sa Android sa pamamagitan ng ADB shell
adb shell tcpdump -i wlan0 -s 0 -w /sdcard/capture.pcap
# Pagkopya sa computer
adb pull /sdcard/capture.pcap .

Pagkuha ng Loopback na trapiko

Sa Windows, ang localhost (127.0.0.1) na trapiko ay hindi dumadaan sa physical interface, kaya hindi ito direktang nakikita ng Wireshark. Ang solusyon — pag-install ng Npcap na may Loopback Support na opsyon o pag-redirect ng trapiko sa pamamagitan ng RawCap. Sa Linux at macOS, ang loopback interface (lo) ay nakukuha nang walang karagdagang setting.

Pag-filter ng mga packet sa Wireshark

Wireshark ay nag-aalok ng dalawang uri ng filter: capture filters (inilalapat bago ang pagkuha, sa antas ng libpcap) at display filters (inilalapat sa mga naharap na data). Gumagamit ang capture filters ng BPF syntax (Berkeley Packet Filter), habang ang display filters — ng sariling language ng Wireshark na may autocomplete.

Capture Filters (BPF)

Ang mga BPF filter ay isinusulat sa tcpdump na format at isinasagawa sa kernel, na nagpapaliit sa pagkawala ng packet sa mataas na karga. Mga halimbawa ng filter:

Filter Layunin
tcp port 80 HTTP lamang na trapiko sa standard port
host 192.168.1.1 Mga packet mula sa isang partikular na host
not arp Lahat ng packet maliban sa mga ARP request

Display Filters

Inilalapat ang display filters pagkatapos at sinusuportahan ang mga komplikadong kondisyon na may mga logical operator na and, or, not. Halimbawa: http.request.method == "POST" and ip.src == 192.168.0.100 ay magfi-filter lamang ng mga POST request mula sa isang partikular na IP. Maaaring i-save ang mga filter bilang paborito para sa muling paggamit.

Pagsusuri ng HTTP at HTTPS na trapiko

HTTP na trapiko ay ipinapakita sa Wireshark sa nababasang anyo: paraan ng request, URI, mga header, at katawan ng tugon. Kinokolekta ng Follow TCP Stream function ang kumpletong diyalogo ng client at server sa isang window. Para sa HTTPS, kinakailangan ang pag-dekript ng TLS sessions, dahil naka-encrypt ang nilalaman.

Pag-dekript ng HTTPS sa pamamagitan ng SSLKEYLOGFILE

Ang mga browser na Chrome at Firefox ay sumusuporta sa environment variable na SSLKEYLOGFILE, na nagsusulat ng mga TLS session key sa isang text file. Ginagamit ng Wireshark ang file na ito para i-dekript ang mga record. Ang configuration ay ginagawa sa pamamagitan ng Preferences → Protocols → TLS → (Pre)-Master-Secret log filename.

bash
# Paglunsad ng Chrome na may pag-record ng mga TLS key
export SSLKEYLOGFILE=/tmp/sslkeys.log
google-chrome .

# Pagkatapos ng pagkuha, tukuyin ang path sa Wireshark
# Edit → Preferences → Protocols → TLS → Log Filename

Pagsusuri ng gRPC at Protobuf

gRPC ay gumagamit ng HTTP/2 bilang transport at Protobuf para sa serialization ng data. Dine-dekript ng Wireshark ang mga gRPC message kung ibibigay ang .proto file na may kahulugan ng mga structure. Itinutugma ng Protobuf dissector ang mga binary field sa mga pangalan mula sa proto file, na kritikal sa pag-debug ng microservice architecture.

Pag-debug ng mobile apps gamit ang Wireshark

Mobile debugging sa pamamagitan ng Wireshark ay nangangailangan ng pag-proxy ng trapiko ng device papunta sa computer. Ang pinaka-maaasahang paraan — paggawa ng Wi-Fi access point sa laptop at pag-redirect ng trapiko sa pamamagitan ng NAT. Sa Android, available din ang VPN method gamit ang PCAPdroid app nang walang root rights.

Configuration sa Android nang walang root

PCAPdroid ay lumilikha ng lokal na VPN service na nagre-redirect ng trapiko ng mga app papunta sa Wireshark sa pamamagitan ng UDP stream. Hindi nangangailangan ng root access ang app at sumusuporta sa pag-filter ayon sa mga indibidwal na proseso. Ang mga nakuhang pcap file ay binubuksan sa Wireshark para sa kumpletong pagsusuri.

bash
# Pagtanggap ng trapiko mula sa PCAPdroid sa computer
# PCAPdroid → Settings → PCAP dumper → UDP Exporter
nc -l -u 192.168.0.10 12345 > capture.pcap

Paghahambing ng Wireshark sa mga alternatibo

Wireshark — isang unibersal na tool, ngunit para sa mga partikular na gawain ay may mas espesyalisadong solusyon. Mas epektibo ang tcpdump para sa server capture nang walang graphics, mas maginhawa ang Charles Proxy para sa pagsusuri ng HTTPS na trapiko, at ang Fiddler — para sa inspeksyon ng web traffic na may kakayahang baguhin ang mga request nang real-time.

Charles Proxy vs Wireshark

Charles Proxy ay gumaganap bilang isang intermediate proxy server na may kakayahang harangin ang HTTPS sa pamamagitan ng sariling SSL certification. Hindi tulad ng Wireshark, hindi nangangailangan ang Charles ng configuration ng SSLKEYLOGFILE at maaari nitong hindi lamang tingnan kundi baguhin ang trapiko — palitan ang mga tugon, i-emulate ang mga pagkaantala, at ulitin ang mga request.

Fiddler Everywhere

Fiddler — isa pang proxy tool na sikat sa .NET ecosystem. Nagbibigay ito ng built-in na request editor, suporta sa AutoResponder para sa mga mock, at composer para sa paggawa ng mga custom na request. Mas angkop ang Fiddler para sa pagsusuri ng web traffic ng browser, habang ang Wireshark — para sa low-level na network analysis.

Tool Uri HTTPS nang walang key Pagbabago ng trapiko
Wireshark Sniffer Hindi (kailangan ang SSLKEYLOGFILE) Tanging tingnan
Charles Proxy Oo (custom na certificate) Oo
Fiddler Proxy Oo (custom na certificate) Oo
tcpdump Sniffer Hindi Tanging tingnan

Mga praktikal na tip sa paggamit ng Wireshark

Wireshark ay nangangailangan ng pag-unawa sa mga pangunahing prinsipyo ng pagkuha ng trapiko. Isa sa mga karaniwang scenario — paghahanap ng pinagmulan ng mga pagkaantala sa isang mobile app sa pamamagitan ng tcp.analysis.ack_rtt filter. Para sa paghahanap ng mabagal na HTTP request, gamitin ang kundisyong http.time mas malaki kaysa 1.

Paghahanap ng mabagal na request

Para sa paghahanap ng mabagal na HTTP request, i-filter ang http.time mas malaki kaysa 1 — ipapakita ng Wireshark ang mga request na may oras ng tugon na higit sa 1 segundo. Pagsamahin sa ip.addr para sa pagsusuri ng isang partikular na server. Ang IO Graph na may 1 segundo na interval ay malinaw na magpapakita ng mga peak ng karga.

Pag-export at pag-uulat

Sinusuportahan ng Wireshark ang pag-export sa CSV, JSON, at XML sa pamamagitan ng File menu. Para sa awtomatikong pagsusuri, gamitin ang tshark — ang console version na gumagana sa mga CI/CD pipeline. Sinusuportahan ng Tshark ang parehong mga filter at output format gaya ng graphical na bersyon.

Mga praktikal na tip sa paggamit ng Wireshark

Wireshark ay nangangailangan ng pag-unawa sa mga pangunahing prinsipyo ng pagkuha ng trapiko. Isa sa mga karaniwang scenario — paghahanap ng pinagmulan ng mga pagkaantala sa isang mobile app sa pamamagitan ng tcp.analysis.ack_rtt filter. Para sa paghahanap ng mabagal na HTTP request, gamitin ang kundisyong http.time mas malaki kaysa 1.

Paghahanap ng mabagal na request

Para sa paghahanap ng mabagal na HTTP request, i-filter ang http.time mas malaki kaysa 1 — ipapakita ng Wireshark ang mga request na may oras ng tugon na higit sa 1 segundo. Pagsamahin sa ip.addr para sa pagsusuri ng isang partikular na server. Ang IO Graph na may 1 segundo na interval ay malinaw na magpapakita ng mga peak ng karga.

Pag-export at pag-uulat

Sinusuportahan ng Wireshark ang pag-export sa CSV, JSON, at XML sa pamamagitan ng File menu. Para sa awtomatikong pagsusuri, gamitin ang tshark — ang console version na gumagana sa mga CI/CD pipeline. Sinusuportahan ng Tshark ang parehong mga filter at output format gaya ng graphical na bersyon.

Mga madalas itanong

Ano ang pagkakaiba ng Wireshark at tcpdump?

Wireshark ay nagbibigay ng graphical interface na may visualization ng packet, built-in na filter, at istatistika. Ang tcpdump — console utility na walang GUI, maginhawa para sa server capture sa pamamagitan ng SSH. Marunong magbasa ng tcpdump files ang Wireshark at vice versa.

Paano harangin ang HTTPS na trapiko sa Wireshark?

Para sa pag-dekript, kinakailangan ang file ng mga TLS session key (SSLKEYLOGFILE). Ang Chrome at Firefox ay nag-e-export ng mga key kapag inilunsad na may environment variable. Ang path sa file ay tinutukoy sa mga setting na Protocols → TLS sa Wireshark.

Bakit hindi nakikita ng Wireshark ang localhost na trapiko sa Windows?

Ang loopback na trapiko sa Windows ay hindi dumadaan sa Npcap driver bilang default. Ang solusyon — pag-install ng Npcap na may naka-enable na Loopback Support na opsyon o paggamit ng RawCap utility para sa pagkuha ng lokal na trapiko.

Magagamit ba ang Wireshark para sa mga mobile apps?

Oo, sa pamamagitan ng pag-proxy ng trapiko papunta sa computer. Sinusuportahan ng Android ang pagkuha sa pamamagitan ng PCAPdroid (walang root) o tcpdump (may root). Ang iOS ay nangangailangan ng RVI (Remote Virtual Interface) sa pamamagitan ng macOS o jailbreak para sa pagkuha.

Paano i-filter ang mga packet ayon sa nilalaman sa Wireshark?

Ang display filter na frame contains ay naghahanap ng string o hex sequence sa buong packet. Halimbawa: frame contains "password" ay makakahanap ng mga packet na may substring na password sa anumang field. Para sa eksaktong paghahanap ayon sa field, gamitin ang http.request.uri contains "api" .

Buod

  • Wireshark — pangunahing tool para sa pagsusuri ng network traffic sa pag-develop, na sumusuporta sa higit sa 2800 na protocol.
  • Pagkuha ng packet ay ginagawa sa promiscuous mode sa pamamagitan ng libpcap o Npcap library sa antas ng data-link access.
  • Pag-filter ay nahahati sa capture filters (BPF, sa antas ng kernel) at display filters (Wireshark language, na may autocomplete).
  • Pag-dekript ng HTTPS ay available sa pamamagitan ng SSLKEYLOGFILE para sa Chrome at Firefox na browser.
  • Mobile debugging ay ginagawa sa pamamagitan ng PCAPdroid (Android) o Remote Virtual Interface (iOS) nang hindi nangangailangan ng root.
  • gRPC at Protobuf ay sinusuportahan sa pamamagitan ng pag-load ng mga .proto file para sa deserialization ng binary data.
  • Flow Graph at IO Graph ay tumutulong na i-visualize ang mga pagkaantala at mahanap ang mga bottleneck sa client-server interaction.

Gagawa kami ng mobile application na turnkey

Gumagawa ang IT Sectr ng mga iOS at Android application para sa mga startup at negosyo mula noong 2017. Magpapayo kami sa iyo at magmumungkahi ng pinakamahusay na solusyon.

Pag-usapan ang proyekto

Basahin din