Wireshark ile Ağ Trafik Analizi ve Paket Yakalama

Wireshark'ta paket yakalama, filtre yazma ve TCP akış takibini gerçek sorun giderme senaryolarıyla anlatıyorum; yasal kullanım sınırlarını da ele alıyorum.

Programlar
Wireshark ile Ağ Trafik Analizi ve Paket Yakalama

Bağlantı sorununu "ağ yavaş çalışıyor" diyerek geçiştirmek bir şey çözmez; sorunun hangi noktada oluştuğunu görmek gerekir. Wireshark, ağ arayüzünüzden geçen her paketi yakalayıp protokol katmanlarına ayırarak bunu mümkün kılar. Bu görünürlük olmadan sorun giderme tahmine dayanır; paket düzeyinde bakıldığında ise çoğu zaman birkaç dakika içinde netlik kazanır.

Bu yazıda paket yakalamadan filtre yazmaya, bağlantı akışlarını izlemekten yasal sınırlara kadar Wireshark'ın günlük kullanımını ele alıyorum. Yeni başlayanların en çok karıştırdığı nokta, yakalama filtresi ile görüntüleme filtresinin farkıdır; bu ayrım ve sık karşılaşılan sorun giderme senaryoları da yazının kapsamında. Amaç, programı kurup ilk yakalamayı aldıktan sonra elinizdeki verilerle ne yapacağınızı netleştirmek.

Wireshark Nedir, Ne İşe Yarar

Wireshark, ağ arayüzüne gelen ve giden trafiği ham hâliyle kaydeden, açık kaynaklı ve ücretsiz bir paket analiz programıdır. Yakalanan veri protokol katmanlarına ayrılır: bir HTTP isteği attığınızda Ethernet çerçevesinden IP başlığına, TCP segmentinden uygulama verisine kadar her katman tek tek incelenebilir hâle gelir. Kurulum ve filtre sözdizimiyle ilgili güncel bilgiye wireshark.org üzerinden ulaşılabilir.

Program üç ana amaçla kullanılır. Ağ sorun giderme, bir bağlantının neden yavaşladığını ya da paketlerin nerede kaybolduğunu ortaya koyar. Protokol öğrenimi, TCP el sıkışması gibi süreçleri şemadan değil gerçek trafikten izlemeyi sağlar. Güvenlik analizinde ise şüpheli trafik kalıplarını ve yetkisiz erişim izlerini yakalamak için kullanılır.

Bu üç kullanım alanı da aynı üç adıma dayanır: paketi yakala, filtrele, oku. Bu üçlü öğrenildikten sonra geri kalan her şey, aynı becerinin farklı senaryolara uygulanmasından ibarettir. Kurulum tarafında da zorluk yok; Windows, macOS ve Linux için hazır paketler var, Linux dağıtımlarının çoğunda program paket yöneticisinden doğrudan kurulur.

sudo apt install wireshark

Paket Yakalama ve Filtreleme

Bir yakalama başlatıldığında Wireshark, seçilen arayüzden geçen trafiğin tamamını kaydeder. Yoğun bir ağda bu, saniyede binlerce paket anlamına gelir ve ham listeye bakmak pratik olmaktan çıkar. Yakalama filtreleri tam bu noktada işe yarar: hangi trafiğin tutulacağını yakalama başlamadan önce siz belirlersiniz.

Wireshark'ta paket listesi ve filtre çubuğunu gösteren arayüz tasarımı

Belirli bir IP'den gelen HTTP trafiğini yakalamak için kullanılacak filtre şöyledir:

host 192.168.1.10 and port 80

DNS sorgularını tek başına izole etmek isterseniz:

udp port 53

Yakalama filtreleri BPF (Berkeley Packet Filter) söz dizimini kullanır ve trafik henüz kaydedilmeden, yakalama anında uygulanır. Görüntüleme filtreleri ise ayrı bir katmandır; yakalama tamamlandıktan sonra, elde edilen paket listesi üzerinde arama yapmaya yarar.

http.response.code == 404
tcp.analysis.retransmission

İlk filtre 404 yanıtı dönen istekleri listeler, ikincisi TCP paketlerinin yeniden gönderildiği durumları gösterir ve genelde paket kaybına işaret eder. Görüntüleme filtresinin söz dizimi, yakalama filtresininkinden tamamen ayrıdır. Yeni başlayanların en sık düştüğü hata bu ikisini karıştırmaktır; "filtre çalışmıyor" yakınmasının altında da genelde bu karışıklık çıkar.

Ayrımı akılda tutmanın kısa yolu şudur: yakalama filtresi kayıttan önce çalışır, görüntüleme filtresi kayıttan sonra. Filtre kutusuna yanlış söz dizimi yazıldığında Wireshark bunu kırmızı renkle işaretler, böylece hata hemen fark edilir.

Protokol Katmanlarını Okumak

Paket ayrıntıları panelinde her paket katman katman açılır. En üstte fiziksel çerçeve bilgisi yer alır, altında Ethernet başlığı, ardından IP, sonra TCP ya da UDP, en altta da uygulama verisi bulunur. Bir paketi genişlettiğinizde TCP bayraklarını (SYN, ACK, FIN), pencere boyutunu ve sıra numaralarını tek tek görürsünüz.

Ağ paketinin katman katman okunmasını gösteren protokol şeması

Bu katmanlı görünüm, TCP el sıkışmasını canlı izlemek için özellikle öğreticidir. Bağlantı kurulumundaki SYN, SYN-ACK, ACK üçlüsünü görmek için kullanılacak filtre:

tcp.flags.syn == 1

Bu filtre uygulandığında bağlantı kurulumunun her adımı ayrı ayrı görülür. Ders kitabında şema olarak anlatılan bu süreç, canlı trafikte üç satırlık bir paket dizisine döner: ilk paketi istemci gönderir, ikincisini sunucu yanıtlar, üçüncüsünü istemci onaylar.

Akışları Takip Etmek

Paketlere tek tek bakmak yerine bir bağlantının tamamını okumak istediğinizde "Follow TCP Stream" özelliği devreye girer. Paket listesinde herhangi bir paketin üzerine sağ tıklayıp bu seçenek seçildiğinde, o bağlantıya ait tüm paketler birleştirilip okunabilir tek bir pencerede gösterilir. İstemciden giden veri ile sunucudan gelen yanıt farklı renklerle ayrılır.

Bu özellik, şifrelenmemiş HTTP trafiğinde bir isteğin baştan sona nasıl işlendiğini görmek için değerlidir. HTTPS trafiğinde gövde içeriği şifreli kaldığından doğrudan okunamaz, ama TLS el sıkışmasının hangi adımda kesildiği yine görülebilir; bu da bağlantı sorunlarını teşhis etmek için çoğu zaman yeterlidir.

Ağ Sorunlarını Teşhis Etmek

Wireshark'ın en sık kullanılma nedeni, bir bağlantının neden koptuğunu bulmaktır. Üç yaygın belirti ve olası karşılığı aşağıdaki gibi özetlenebilir:

Ağ sorunlarını teşhis etmek için gecikme ve hata oranlarını gösteren panel
BelirtiWireshark'ta arayacağınızOlası neden
Yavaş yüklemeYüksek tcp.analysis.retransmission sayısıPaket kaybı, zayıf sinyal
Ani kopmalartcp.flags.reset == 1 filtreli RST paketleriGüvenlik duvarı, sunucu zaman aşımı
DNS çözümleme gecikmesidns filtresiyle sorgu-yanıt süresi farkıYavaş veya erişilemez DNS sunucusu

İstatistikler menüsündeki "Conversations" penceresi, hangi IP çiftinin ne kadar veri alışverişinde bulunduğunu gösterir; bu görünüm, büyük bir dosya aktarımı mı yoksa alışılmadık bir arka plan trafiği mi olduğunu ayırt etmeye yarar. "Protocol Hierarchy" ise yakalanan trafiğin protokol dağılımını verir ve beklenmedik bir protokolün ağda dolaştığını fark etmenin en hızlı yoludur.

Bu iki panel birlikte kullanıldığında trafiğin genel görünümü, paketleri tek tek taramadan da birkaç saniyede kavranabilir. Sorun genelde bu üst düzey görünümde belli olur, ayrıntılı inceleme ondan sonra yapılır. Yüzbinlerce paket içeren büyük bir yakalama dosyasında doğrudan paket listesine dalmak yerine önce bu özet panellere bakmak, zamandan büyük ölçüde tasarruf sağlar.

Güvenlik Analizinde Kullanım ve Sınırlar

Şüpheli trafik kalıplarını fark etmek, Wireshark'ın güvenlik tarafındaki temel işlevidir. Beklenmedik dış bağlantılar, alışılmadık port kullanımı ve tekrarlayan başarısız kimlik doğrulama denemeleri bu kalıplara örnektir. Bir olay sonrasında elde bulunan yakalama dosyası, neyin ne zaman gerçekleştiğini adli düzeyde yeniden kurmaya yardımcı olur.

Burada net bir sınır var: Wireshark yalnızca kullanım yetkiniz olan ağlarda çalıştırılmalıdır. Başkasına ait ağ trafiğini izinsiz izlemek, Türkiye dahil birçok ülkede yasal sonuç doğurur. Araç kendi altyapınızda sorun giderme amacıyla ya da açıkça izin verilmiş bir sızma testi kapsamında kullanılmalı; kurumsal ortamda bile trafiği izlemeden önce yazılı yetki almak standart bir uygulamadır.

Wireshark'ı öğrenmenin en pratik yolu, kendi ev ağınızda basit yakalamalar yapmaktır. Bir web sitesi açarken DNS sorgusundan TCP el sıkışmasına, HTTP isteğinden yanıta kadar tüm zinciri izlemek, ders kitabındaki protokol şemalarını canlı trafikte görmenin en hızlı yoludur. Birkaç yakalamadan sonra paket listesindeki kalıpları tanımaya başlarsınız ve bu, sorun giderme hızınızı zamanla belirgin biçimde artırır.

Google

Google'da bizi tercih edin

Yazılarımız Google'da öne çıksın.

Tercih edilen kaynak olarak ekle
Bizi takip edin
Celil Uyanikoglu

Yazan Celil Uyanikoglu

Bilgisayar mühendisiyim; 25 yılı aşkın süredir bilgi işlem sektörünün içindeyim. Bu blogu 2020'de, işimde her gün karşılaştığım sorunların çözümlerini bir yere yazmak için açtım: Linux, güvenlik, tarayıcılar, yapay zeka araçları. Yazdığım her rehberi önce kendi bilgisayarımda ya da sunucumda deniyorum; çalıştığını görmediğim adımı yayınlamam. Hatalı ya da eskimiş bir şey görürsen iletişim sayfasından yaz — düzeltirim.

Yorum

Henüz yorum yok.

Sohbete katıl. Yorumlar yayınlanmadan önce moderasyondan geçer.

Yorum yap

E-posta adresin yayınlanmaz. Yorumlar moderasyondan sonra yayınlanır.

jekcms 61602b0e6293b42004a1