如何使用Wireshark:完整教程

Wireshark是一個免費的應用程序,允許您捕獲和查看網絡中來回傳輸的數據,提供深入挖掘和讀取每個數據包內容的功能 - 根據您的特定需求進行過濾。 它通常用於解決網絡問題以及開發和測試軟件。 這種開源協議分析儀被廣泛接受為行業標準,多年來贏得了公平的獎勵份額。

Wireshark最初被稱為Ethereal,它具有用戶友好的界面,可以顯示來自所有主要網絡類型上數百種不同協議的數據。 這些數據包可以實時查看或離線分析,支持數十種捕獲/跟踪文件格式,包括CAPERF 。 集成的解密工具允許您查看幾種流行協議(如WEPWPA / WPA2)的加密數據包。

07年1月

下載並安裝Wireshark

Getty Images(Yuri_Arcurs#507065943)

Wireshark可以從Wireshark基金會網站免費下載,用於macOS和Windows操作系統。 除非您是高級用戶,否則建議您只下載最新的穩定版本。 在安裝過程中(僅限Windows),如果出現提示,您應該選擇安裝WinPcap,因為它包含實時數據捕獲所需的庫。

該應用程序也可用於Linux和大多數其他類UNIX平台,包括Red Hat ,Solaris和FreeBSD。 這些操作系統所需的二進製文件可以在第三方軟件包部分的下載頁面底部找到。

您也可以從此頁面下載Wireshark的源代碼。

07年2月

如何捕獲數據包

Scott Orgera

當您首次啟動Wireshark時,應該可以看到類似於上面所示的歡迎屏幕,其中包含當前設備上的可用網絡連接列表。 在本例中,您會注意到顯示了以下連接類型: 藍牙網絡連接以太網VirtualBox主機專用網絡Wi-Fi 。 顯示在每個網絡右側的是一個EKG風格線圖,表示該網絡上的實時流量。

要開始捕獲數據包,首先通過單擊您的選擇並使用ShiftCtrl鍵選擇一個或多個這些網絡,如果您想同時記錄來自多個網絡的數據。 一旦選擇連接類型用於捕捉目的,其背景將以藍色或灰色陰影。 點擊位於Wireshark界面頂部的主菜單中的Capture 。 出現下拉菜單時,選擇開始選項。

您還可以通過以下某個快捷方式啟動數據包捕獲。

實時捕獲過程現在將開始,數據包詳細信息顯示在Wireshark窗口中並記錄下來。 執行以下操作之一以停止捕獲。

03年7月

查看和分析數據包內容

Scott Orgera

現在您已經記錄了一些網絡數據,現在可以查看捕獲的數據包了。 如上圖所示,捕獲的數據接口包含三個主要部分:數據包列表窗格,數據包詳細信息窗格和數據包字節窗格。

數據包列表

位於窗口頂部的數據包列表窗格顯示在活動捕獲文件中找到的所有數據包。 每個數據包都有自己的行和分配給它的相應編號,以及每個數據點。

在頂部窗格中選擇數據包時,您可能會注意到第一列中出現一個或多個符號。 開放和/或關閉的括號以及水平直線可以指示一個數據包或一組數據包是否都是網絡上相同的來回對話的一部分。 斷開的水平線表示分組不是所述對話的一部分。

數據包細節

詳細信息窗格位於中間,以可折疊的格式顯示所選數據包的協議和協議字段。 除了擴展每個選擇外,還可以根據特定的細節應用單個Wireshark過濾器,並通過詳細信息上下文菜單跟踪基於協議類型的數據流 - 通過在此窗格中的所需項目上右鍵單擊鼠標即可訪問。

數據包字節

最下面是數據包字節窗格,它以十六進制視圖顯示所選數據包的原始數據。 該十六進制轉儲包含16個十六進製字節和16個ASCII字節以及數據偏移量。

選擇此數據的特定部分會自動在數據包詳細信息窗格中突出顯示其相應部分,反之亦然。 任何不能打印的字節都用一個句點表示。

您可以選擇以位格式顯示此數據,而不是通過右鍵單擊窗格中的任何位置並從上下文菜單中選擇適當的選項,而不是使用十六進制。

04年7月

使用Wireshark過濾器

Scott Orgera

Wireshark中最重要的功能之一就是它的過濾功能,特別是當你處理大小很大的文件時。 捕獲過濾器可以在事實之前設置,指示Wireshark只記錄符合您指定條件的數據包。

過濾器也可以應用於已創建的捕獲文件,以便僅顯示某些數據包。 這些被稱為顯示過濾器。

Wireshark默認提供了大量預定義的過濾器,只需幾次擊鍵或點擊鼠標就可以縮小可見數據包的數量。 要使用這些現有過濾器之一,請將其名稱放在應用顯示過濾器輸入字段(位於Wireshark工具欄正下方)或輸入捕獲過濾器輸入字段(位於歡迎屏幕中央)中。

有多種方法可以實現這一點。 如果您已經知道過濾器的名稱,只需將其輸入相應的字段。 例如,如果您只想顯示TCP數據包,則可以鍵入tcp 。 Wireshark的自動完成功能將在您開始輸入時顯示建議的名稱,從而更容易找到正在尋找的過濾器的正確名稱。

另一種選擇過濾器的方法是單擊位於輸入字段左側的書籤狀圖標。 這將顯示一個菜單,其中包含一些最常用的過濾器以及管理捕獲過濾器管理顯示過濾器的選項。 如果您選擇管理任一類型,則會出現一個界面,允許您添加,刪除或編輯過濾器。

您也可以通過選擇位於輸入字段右側的向下箭頭來訪問以前使用的過濾器,該向下箭頭顯示歷史記錄下拉列表。

一旦設置,捕捉過濾器將在您開始記錄網絡流量時立即應用。 但是,要應用顯示過濾器,則需要單擊輸入字段最右側的右箭頭按鈕。

07年05月

著色規則

Scott Orgera

雖然Wireshark的捕獲和顯示過濾器允許您限制哪些數據包被記錄或顯示在屏幕上,但它的著色功能可以通過根據各自的色調輕鬆區分不同的數據包類型而進一步推進。 這個方便的功能使您可以通過數據包列表窗格中的行的顏色方案快速找到保存的數據包中的某些數據包。

Wireshark自帶約20種默認著色規則; 每個可以編輯,禁用或刪除,如果你願意。 您還可以通過著色規則界面添加新的基於陰影的過濾器,無法從“ 視圖”菜單訪問。 除了為每個規則定義名稱和過濾條件之外,還要求您將背景顏色和文本顏色相關聯。

數據包著色功能可以通過“ 查看”菜單中的“著色數據包列表”選項進行切換。

06年7月

統計

Getty Images(科林安德森#532029221)

除了Wireshark主窗口中顯示的有關網絡數據的詳細信息之外,還可以通過屏幕頂部的統計信息下拉菜單查看其他幾個有用的指標。 其中包括有關捕獲文件本身的大小和時間信息,以及數十個圖表和圖形,主題從分組會話分解到負載分配HTTP請求。

顯示過濾器可以通過各自的接口應用於其中的許多統計信息,並且可以將結果導出為CSVXML和TXT等幾種常見文件格式。

07年7月

高級功能

Lua.org

雖然我們在本文中已經介紹了Wireshark的大部分主要功能,但這個強大工具中還有一些額外的功能,通常為高級用戶保留。 這包括使用Lua編程語言編寫自己的協議解析器的能力。

有關這些高級功能的更多信息,請參閱Wireshark的官方用戶指南。