Winsock izlemesinin kontrolü
Winsock izlemesi aşağıdaki yöntemlerden biri kullanılarak denetlenebilir:
Komut satırı araçları
Windows Vista ve Windows Server 2008'e, ikili izleme günlük dosyasını okunabilir metne dönüştürmek ve izlemeyi denetlemek için kullanılan iki komut satırı aracı dahildir.
winsock izlemesini başlatmak veya durdurmak için logman.exe aracı kullanılır.
tracerpt.exe aracı, ikili izleme günlüğü dosyasını okunabilir bir metin dosyasına dönüştürmek için kullanılır.
Olay Görüntüleyicisi
Windows Vista ve sonraki sürümlerde Olay Görüntüleyicisi, Winsock izlemeyi etkinleştirmek için de kullanılabilir. Olay Görüntüleyicisi'ne Başlat menüsünden Yönetim Araçları altında erişilebilir.
Logman ve tracerpt'i kullanma
Winsock ağ olay izlemesi, Windows Vista ve sonraki sürümlerde varsayılan olarak devre dışıdır.
Aşağıdaki komut bir bilgisayarda Winsock ağ olay izlemesini başlatır, olay izleme oturumunun adını mywinsocksession olarak ayarlar ve çıkışı winsocklogfile.etl adlı ikili günlük dosyasına gönderir:
logman start -ets mywinsocksession -o winsocklogfile.etl -p Microsoft-Windows-Winsock-AFD
Günlük dosyaları, geçerli dizinde winsocklogfile_000001.etl biçiminde dosya adlarıyla oluşturulur.
Aşağıdaki komut, mywinsocksession adlı oturum için bir bilgisayarda yukarıdaki Winsock izleme işlemini durdurur:
logman stop -ets mywinsocksession
İkili günlük dosyası , –o parametresi tarafından belirtilen konuma yazılır. İkili dosyayı okunabilir bir metin dosyasına çevirmek için tracerpt.exe kullanılır:
.etl dosyasının tracerpt.exe <adı> –o winsocktracelog.txt
Düz metin yerine xml içeren bir çıkış dosyası tercih edilirse aşağıdaki komut kullanılır:
tracerpt.exe <.etl dosyasının adı> –o winsocktracelog.xml –of xml
Winsock kataloğu değişiklik izlemesi Windows Vista ve sonraki sürümlerde varsayılan olarak etkindir.
Not
Katmanlı Hizmet Sağlayıcıları artık desteklenmemektedir. Windows 8 ve Windows Server 2012'den başlayarak Windows Filtreleme Platformukullanın.
Aşağıdaki komut, bilgisayardaki katmanlı hizmet sağlayıcıları (LSP) için Winsock Kataloğu Değişiklik izlemeyi başlatır, olay izleme oturumunun adını mywinsockcatalogsession olarak ayarlar ve çıkışı winsockcataloglogfile.etl adlı ikili günlük dosyasına gönderir:
logman start -ets mywinsockcatalogsession -o winsockcataloglogfile.etl -p Microsoft-Windows-Winsock-WS2HELP
Geçerli dizinde winsockcataloglogfile_000001.etl biçiminde dosya adlarına sahip günlük dosyaları oluşturulur.
Aşağıdaki komut, bir bilgisayarda "mysession" adlı oturum için yukarıdaki Winsock izlemeyi durdurur:
logman stop -ets mywinsockcatalogsession
İkili günlük dosyası , –o parametresi tarafından belirtilen konuma yazılır. İkili dosyayı okunabilir bir metin dosyasına çevirmek için tracerpt.exe kullanılır:
.etl dosyasının tracerpt.exe <adı> –o winsockcatalogtracelog.txt
Düz metin yerine xml içeren bir çıkış dosyası tercih edilirse aşağıdaki komut kullanılır:
tracerpt.exe <.etl dosyasının adı> –o winsockcatalogtracelog.xml –of xml
Winsock Ağ Olay İzlemeyi Başlatmak için Olay Görüntüleyicisi'ni Kullanma
Olay Görüntüleyicisi'ni açtığınızda, sol bölme olay listesini içerir. Uygulama ve Hizmet Günlükleri'ni açın ve kaynak olarak Microsoft\Windows\Winsock Ağ Olayı'na gidin ve İşletimsel'i seçin.
Eylem bölmesinde Günlük Özellikleri seçin ve Günlüğe Kaydetmeyi Etkinleştir onay kutusunu seçin. Günlükleme etkinleştirildikten sonra, gerekirse günlük dosyasının boyutunu da değiştirebilirsiniz.
Winsock ağ olay izleme özelliği artık etkindir ve tek yapmanız gereken Günlüğe kaydedilen olayların listesini güncelleştirmek için Yenile eylemine basmaktır. Günlüğe kaydetmeyi durdurmak için daha önce işaretlediğiniz radyo düğmesinin işaretini kaldırmanız yeterlidir.
Kaç olay görmek istediğinize bağlı olarak log dosyası boyutunu artırmanız gerekebilir. Winsock izlemesi için Olay Görüntüleyicisi'ni kullanmanın bir dezavantajı, tüm dize kaynaklarını yüklememesidir, bu nedenle Açıklama alanında görüntülenen iletilerin (bir olayı seçtikten sonra) bazen okunması zor olur (örneğin onaltılık olarak biçimlendirilmesi gereken bir bağımsız değişken ondalık olarak görüntülenir). Ancak, genellikle bağımsız değişkenlerin anlaşılması daha kolay olan ham XML günlük girişini gösteren Ayrıntılar sekmesini olay açıklamasında seçebilirsiniz.
Winsock Kataloğu Değişiklik İzlemeyi Başlatmak için Olay Görüntüleyicisi'ni Kullanma
Olay Görüntüleyicisi'ni açtığınızda, sol bölme olay listesini içerir. Uygulama ve Hizmet Günlükleri açın ve Microsoft\Windows\Winsock Katalog Değişikliği kaynağına giderek İşletimselseçin.
Eylem bölmesinde Günlük Özellikleri seçin ve Günlüğe Kaydetmeyi Etkinleştir onay kutusunu seçin. Günlükleme etkinleştirildikten sonra, gerekirse günlük dosyasının boyutunu da değiştirebilirsiniz.
Winsock kataloğu değişiklik izlemesi etkinleştirildi ve tek yapmanız gereken, günlüğe kaydedilen olayların listesini güncelleştirmek için Yenile eylemine basmaktır. Günlüğe kaydetmeyi durdurmak için daha önce işaretlediğiniz radyo düğmesinin işaretini kaldırmanız yeterlidir.
Kaç olay görmek istediğinize bağlı olarak log dosyası boyutunu artırmanız gerekebilir. Winsock izlemesi için Olay Görüntüleyicisi'ni kullanmanın bir dezavantajı, tüm dize kaynaklarını yüklememesidir. Bu nedenle, bir olayı seçtiğinizde Açıklama alanında görüntülenen mesajların okunması bazen zor olabilir. Örneğin, onaltılık olarak biçimlendirilmesi gereken bir bağımsız değişken, ondalık olarak gösterilir. Ancak, genellikle bağımsız değişkenlerin anlaşılması daha kolay olan ham XML günlük girişini gösteren Ayrıntılar sekmesini olay açıklamasında seçebilirsiniz.
Winsock İzleme Günlüklerini Yorumlama
Bir günlükteki tüm Winsock izleme olayları iki tür bilgi içerir:
- Sistem
- OlayVerisi
Sistem bilgileri günlük düzeyini, günlük girişinin oluşturulduğu saati, olay türünü temsil eden olay kimliğini, yürütme İşlemi Kimliğini, yürütme İş Parçacığı Kimliğini ve diğer sistem bilgilerini içerir. Winsock izlemesinde günlük düzeyi 4, bilgi olay günlüğünü temsil eder. Winsock izlemesinde 5 seviyesi ayrıntılı olay günlüğünü temsil eder.
Sistem bilgilerindeki yürütme işlemi kimliği ve iş parçacığı kimliği, olay oluştuğunda çalışan işlemi ve iş parçacığını gösterir. Çoğu durumda bu, kullanıcı modu iş parçacığı veya uygulamanın işlemi yerine çekirdek veya çalışan iş parçacığını ve işlemini temsil eder. Bu nedenle bu alan normalde çok kullanışlı değildir.
Her Winsock izleme olay türü, günlüğe kaydedilen verilerin sistem bölümünde benzersiz bir olay kimliğine sahiptir. Bu olay kimlikleri, belirli Winsock izleme olaylarını bir günlük dosyasında filtrelemek için kolayca kullanılabilir.
eventdata, olay türüne özgü bilgiler içerir.
eventdata bilgilerindeki İşlem parametresi, gerçek PID değil, işlemin çekirdek EPROCESS yapı adresidir. Bir olayı kullanıcı modu süreç kimliği (PID) ile eşleştirmek için, herhangi bir günlük girdisindeki olay verilerinden İşlem değerini alın ve bu İşlem değeri ile daha önce bir yuva oluşturma olayı olup olmadığını günlüğün önceki bölümlerinde arayın. Eşleşme bulunduktan sonra yuva oluşturma olay verilerindeki son parametre, yuvayı oluşturan kullanıcı modu İşlem Kimliği'dir.
Bazı Winsock izleme olaylarında eventdata bilgilerindeki bir Address parametresi döndürülür. Adres parametresi bir IP adresini temsil eder, ancak tracerpt.exe aracı tarafından oluşturulan metin dosyasında veya Olay Görüntüleyicisi'nde ham bayt veya sayı olarak görüntülenir. IPv6 adresleri onaltılık olarak görüntülenir, bu nedenle daha kolay anlaşılır. IPv4 adresleri büyük bir ondalık sayı olarak görüntülenir. Geliştiricilerin, değeri daha iyi yorumlayabilmek için IPv4 adresinin ham baytlarını el ile daha tanıdık IPv4 noktalı ondalık adres gösterimine dönüştürmesi gerekir.
Bazı Winsock izleme olaylarında eventdata içindeki bir Error parametresi döndürülür. Error parametresi, NTSTATUS veya HRESULT hata kodu biçimindedir. Bu hata parametresi, tracerpt.exe aracı tarafından oluşturulan metin dosyasında veya Olay Görüntüleyicisi'nde ondalık sayı olarak görüntülenir. Geliştiricilerin, bazı durumlarda hata kodunu daha iyi yorumlayabilmek için ondalık sayıyı el ile onaltılık sayıya dönüştürmesi gerekir.