Wireshark使用教程

原文鏈接:網絡分析工具Wireshark使用教程

第 1 章 介紹

1.1. 什麼是Wireshark

Wireshark 是網絡包分析工具。網絡包分析工具的主要作用是嘗試捕獲網絡包, 並嘗試顯示包的儘可能詳細的情況。

你可以把網絡包分析工具當成是一種用來測量有什麼東西從網線上進出的測量工具,就好像使電工用來測量進入電信的電量的電度表一樣。(當然比那個更高級)

過去的此類工具要麼是過於昂貴,要麼是屬於某人私有,或者是二者兼顧。 Wireshark出現以後,這種現狀得以改變。

Wireshark可能算得上是今天能使用的最好的開元網絡分析軟件。

1.1.1. 主要應用

下面是Wireshark一些應用的舉例:

  • 網絡管理員用來解決網絡問題
  • 網絡安全工程師用來檢測安全隱患
  • 開發人員用來測試協議執行情況
  • 用來學習網絡協議

除了上面提到的,Wireshark還可以用在其它許多場合。

1.1.2. 特性

  • 支持UNIX和Windows平臺
  • 在接口實時捕捉包
  • 能詳細顯示包的詳細協議信息
  • 可以打開/保存捕捉的包
  • 可以導入導出其他捕捉程序支持的包數據格式
  • 可以通過多種方式過濾包
  • 多種方式查找包
  • 通過過濾以多種色彩顯示包
  • 創建多種統計分析
  • …還有許多

不管怎麼說,要想真正瞭解它的強大,您還得使用它才行

圖 1.1. Wireshark捕捉包並允許您檢視其內

1.1.3. 捕捉多種網絡接口

Wireshark 可以捕捉多種網絡接口類型的包,哪怕是無線局域網接口。想了解支持的所有網絡接口類型, 可以在我們的網站上找到

1.1.4. 支持多種其它程序捕捉的文件

Wireshark可以打開多種網絡分析軟件捕捉的包,詳見???

1.1.5. 支持多格式輸出

Wieshark可以將捕捉文件輸出爲多種其他捕捉軟件支持的格式,詳見???

1.1.6. 對多種協議解碼提供支持

可以支持許多協議的解碼(在Wireshark中可能被稱爲解剖)???

1.1.7. 開源軟件

Wireshark是開源軟件項目,用GPL協議發行。您可以免費在任意數量的機器上使用它,不用擔心授權和付費問題,所有的源代碼在GPL框架下都可以免費使用。因爲以上原因,人們可以很容易在Wireshark上添加新的協議,或者將其作爲插件整合到您的程序裏,這種應用十分廣泛。

1.1.8. Wireshark不能做的事

Wireshark不能提供如下功能

  • Wireshark不是入侵檢測系統。如果他/她在您的網絡做了一些他/她們不被允許的奇怪的事情,Wireshark不會警告您。但是如果發生了奇怪的事情,Wireshark可能對察看發生了什麼會有所幫助。 [3]

    譯者注:因爲不是入侵檢測之用,所以不會將入侵檢測和普通通信區別對待,但是都會體現在網絡包裏面,如果您有足夠的經驗,或許能通過監視網絡包發現入侵檢測

  • Wireshark不會處理網絡事務,它僅僅是“測量”(監視)網絡。Wireshark不會發送網絡包或做其它交互性的事情(名稱解析除外,但您也可以禁止解析)。

1.2. 系通需求

想要安裝運行Wireshark需要具備的軟硬件條件...

1.2.1. 一般說明

  • 給出的值只是最小需求,在大多數網絡中可以正常使用,但不排除某些情況下不能使用。 [4]

    [4] 譯者注:原文 “The values below are the minimum requirements and only "rules of thumb" for use on a moderately used network”,其中”rules of thumb”中譯名應該是拇指規則,但網上關於拇指規則解釋莫衷一是,大致意思是說:大多數情況下適用,但並非所有情況。這裏翻譯的有點彆扭

  • 在繁忙的網絡中捕捉包將很容塞滿您的硬盤!舉個簡單的例子:在100MBIT/s全雙工以太網中捕捉數據將會產生750MByties/min的數據!在此類網絡中擁有高速的CPU,大量的內存和足夠的磁盤空間是十分有必要的。
  • 如果Wireshark運行時內存不足將會導致異常終止。可以在此鏈接察看詳細介紹以及解決辦法。
  • Wireshark作爲對處理器時間敏感任務,在多處理器/多線程系統環境工作不會比單獨處理器有更快的速度,例如過濾包就是在一個處理器下線程運行,除了以下情況例外:在捕捉包時“實時更新包列表”,此時捕捉包將會運行在一個處理下,顯示包將會運行在另一個處理器下。此時多處理或許會有所幫助。[5]

    譯者注:我對這句話的理解是,正如播放電影一樣,高性能的處理器只會增強顯示效果,您並不需要將原來30分鐘的影片10分鐘之內看完。當然,對減少延時還是有作用的。但是感覺這句有點閱讀困難,可能翻譯的有點問題.

1.2.2. Microsoft Windows

  • Windows 2000,XP Home版,XP Pro版,XP Tablet PC,XP Media Center, Server 2003 or Vista(推薦在XP下使用)
  • 32-bit奔騰處理器或同等規格的處理器(建議頻率:400MHz或更高),64-bit處理器在WoW64仿真環境下-見一般說明
  • 128MB系統內存(建議256Mbytes或更高)
  • 75MB可用磁盤空間(如果想保存捕捉文件,需要更多空間)
  • 800600(建議12801024或更高)分辨率最少65536(16bit)色,(256色舊設備安裝時需要選擇”legacy GTK1”)

  • 網卡需求:
    • 以太網:windows支持的任何以太網卡都可以
    • 無線局域網卡:見MicroLogix support list, 不捕捉802.11包頭和無數據楨。
    • 其它接口見:此鏈接

說明

  • 基於以下三點原因,將不會對舊版Windows提供支持:沒有任何開發人員正在使用那些操作系統, 這將使支持變得更加困難,Wireshark運行所依賴的庫文件(如GTK,WinPCap等)也放棄對它們的支持。 同樣,微軟也放棄了對它們的技術支持。
  • Windows 95,98和ME不能運行Wireshark。已知的最後一個可以運行在以上平臺的版本是Ethereal0.99.0(需要安裝WinPCap3.1),你依然可以使用從:此鏈接獲得。

    順便提一下:微軟於2006年1月11日停止對98/ME支持。

  • Windows NT 4.0今後將無法運行Wireshark.最有一個已知版本是Wireshark0.99.4(需安裝自帶的WinPCap3.1),你依然可以從:此鏈接得到它。

    順便提一下:微軟於2005年12月31日停止對NT 4.0的支持。

  • Windows CE 及嵌入版windows(NT/XP)不被支持。
  • 64-bit處理器運行Wireshark需要在32bit仿真環境下(稱作WoW64),最低需要安裝WinPCap4.0。
  • 支持多顯示(不知道是顯示其還是監視器)安裝,但會遇到一些不可預料的問題。

1.2.3. Unix/Linux

Wireshark目前可以運行在許多UNIX平臺,系統可以對照上面Windows下的指標。 二進制包最少在以下平臺可用:

  • APPle Mac OSX
  • Debian GNU/Linux
  • FreeBSD
  • NetBSD
  • OpenPKG
  • Red Hat Fedora/Enterprise Linux
  • rPath Linux
  • Sun Solaris/i386
  • Sun Solaris/Sparc

如果二進制包在您的平臺無法使用,你可以下載源文件並嘗試編譯它。 希望您能發送郵件到wireshark-dev[AT]wireshark.org .分享您的經驗。

1.3. 從哪裏可以得到Wireshark

你可以從我們的網站下載最新版本的Wireshark.網站上您可以選擇適合您的鏡像站點。
Wireshark通常在4-8周內發佈一次新版本,如果您想獲得Wireshark發佈的消息通知,你可以訂閱Wireshark-announce郵件列表。詳見第 1.6.4 節 “郵件列表”

1.4. Wiresahrk簡史[6]

[6] 本段因爲有很多協議,程序開發方面的術語,翻譯得比較糟糕

1997年以後,Gerald Combs 需要一個工具追蹤網絡問題並想學習網絡知識。所以他開始開發Ethereal(Wireshark項目以前的名稱) 以解決以上的兩個需要。

Ethereal是第一版,經過數次開發,停頓,1998年,經過這麼長的時間,補丁,Bug報告,以及許多的鼓勵,0.2.0版誕生了。Ethereal就是以這種方式成功的。

此後不久,Gilbert Ramirez發現它的潛力,併爲其提供了底層分析。

1998年10月,Guy Harris正尋找一種比TcpView更好的工具,他開始爲Ethereal進行改進,並提供分析。

1998年以後,正在進行TCP/IP教學的Richard Sharpe關注了它在這些課程中的作用。並開始研究該軟件是否他所需要的協議。如果不行,新協議支持應該很方便被添加。所以他開始從事Ethereal的分析及改進。

從那以後,幫助Ethereal的人越來越多,他們的開始幾乎都是由於一些尚不被Ethereal支持的協議。所以他們拷貝了已有的解析器,併爲團隊提供了改進回饋。

2006年項目Moved House(這句不知道怎麼翻譯)並重新命名爲:Wireshark.

1.5. Wireshark開發維護

Wireshark最初由Gerald Combs開發。目前由Wireshark team進行進一步開發和維護。Wireshark team是一個由修補bug提高Wireshark功能的獨立成員組成的鬆散組織。

有大量的成員爲Wireshark提供協議分析。同時我們也希望這些活動能持續進行。通過查看Wireshark幫助菜單下的About,你可以找到爲Wireshark提供代碼的人員名單,或者你也可以通過Wireshark 網站的authors頁面找到。

Wireshark 是開源軟件項目,發佈遵循GNU General Public Licence(GPL協議),所有源代碼可以在GPL框架下免費使用。歡迎您修改Wireshark以便適合您的需要,如果您可以提供您的改進給Wireshark team ,我們將不勝感激。

爲Wireshark Team 提供您的改進建議,有以下益處:

  • 如果其他人發現您提供的改進十分有用會肯定它們的價值,您將會得知你曾像Wireshark team 一樣幫助過他人
  • The developers of Wireshark might improve your changes even more, as there's always room for improvement. Or they may implement some advanced things on top of your code, which can be useful for yourself too.
    • The maintainers and developers of Wireshark will maintain your code as well, fixing it when API changes or other changes are made, and generally keeping it in tune with what is happening with Wireshark. So if Wireshark is updated (which is done often), you can get a new Wireshark version from the website and your changes will already be included without any effort for you.

Wireshar 源代碼和二進制kits (二進制工具包?)可以根據自己的平臺對應下載,網站是:http://www.wireshark.org/download.html.

1.6. 彙報問題和獲得幫助

如果您在使用中碰到了問題,或者您需要Wireshark的幫助,有以下幾種可能讓您有興趣的方法(當然,還包括這本書)。

1.6.1. 網站

通過訪問http://www.wireshark.org你將會發現關於Wireshark許多有用的信息。

1.6.2. 百科全書

Wireshark Wiki提供廣泛的跟Wireshark以及捕捉包有關信息。你將會發現一些沒有被包括在本書內信息,例如:wiki上有解釋如何在交換網絡捕捉包,同時我們正努力建立協議參考,等等。

最好的事情是,如果對某些知識有獨到見解(比如您精通某種協議),您可以通過瀏覽器編輯它。

1.6.3. FAQ

最經常被問到的問題“Frequently Asked Questions”提供一個經常被問到的問題以及答案的列表。

Read The FAQ

在您發送任何郵件到郵件列表之前,確信您已經閱讀了FAQ,因爲這裏面很可能已經提供了您想問的問題,答案。這將大大節約您的時間(記住,有很多人提交了大量的郵件)。

1.6.4. 郵件列表

下面的幾個幾個郵件列表,分別屬於不同的主題:

  • Wireshark-users

這是一個Wireshark用戶的列表,大家提交關於安裝和使用Wireshark的問題,其它人(非常有用)提供的答案。(譯者注:其他人當然也是指用戶?)

  • wireshark-announce
    這是一個關於程序發佈信息的列表,通常每4-8周出現一次。+
  • wireshark-dev
    這是一個關於Wireshark開發的郵件列表,如果開始開發協議分析,可以從加入該列表

你可以通過網站http://www.wireshark.org訂閱每個郵件列表.簡單點擊網站左手邊的郵件列表鏈接就可以。郵件同樣在網站上可以看到存檔。

提示

你可以搜索存檔看看有沒有人問過跟你一樣的問題,或許您的問題已經有了答案。這樣您就不必提交郵件以等待別人答覆您了。

1.6.5. 報告問題

注意

在您提交任何問題之前,請確定您安裝的是最新版本的Wireshark。

當您提交問題的時候,如果您提供如下信息將會對解決問題很有幫助。

    1. Wireshark的版本,及其依賴的庫的版本,如GTK+,等等。你可以通過Wireshark –v命令獲得版本號。(估計是UNIX/Linux平臺)。
    1. 運行Wireshark的平臺信息。
    1. 關於問題的詳細描述。
    1. 如果您得到錯誤或者警告信息,拷貝錯誤信息的文本(以及在此之前或之後的文本,如果有的話),這樣其他人可能會發現發生問題的地方。請不要發送諸如:“I got a warning while doing x” [7],因爲這樣看起來不是個好主意。

[7] 譯者注:那句話的意思是,我在XX時碰到一個警告信息

不要發送大文件

不要發送過大的文件(>100KB)到郵件列表,在郵件中附加一個能提供足夠數據的記事本就可以。大文件會讓很多郵件列表裏的那些對您的問題不感興趣的用戶感到惱怒。如果需要,你可以單獨發送那些數據給對您問題真正感興趣,要求您發送數據的人。

不要發送機密信息!

如果您發送捕捉數據到郵件列表,請確定它們不包含敏感或者機密信息,比如密碼或者諸如此類的。

1.6.6. 在UNIX/Linux平臺追蹤軟件錯誤

如果您發送捕捉數據到郵件列表,請確定它們不包含敏感或者機密信息,比如密碼或者諸如此類的。

你可以通過如下命令獲得追蹤信息:

 $ gdb `whereis wireshark | cut -f2 -d: | cut -d' ' -f2` core >&bt.txt
 backtrace
 ^D
 $

注意

在逐字輸入第一行的字符![8]

[8] 譯者注:原文是:"Type the characters in the first line verbatim! Those are back-tics there!",Those are back-tics there!不知道是什麼意思,back-tics=後勤抽搐?熟悉Linux的或許知道

注意

追蹤是一個GDB命令。你可以在輸完第一上以後輸入它,但是會沒有相應,^D命令(CTL+D)將會退出GDB命令。以上命令讓你在當前目錄得到一個名爲bt.txt的文本文件,它包含您的bug報告。

注意

如果您缺少GDB,您必須檢查您的操作系統的調試器。

你可以發送追蹤郵件到wireshark-dev[AT]wireshark.org郵件列表

1.6.7. 在Windows平臺追蹤軟件錯誤

Windows下無法包含符號文件(.pdb),它們非常大。因此不太可能創建十分有意義的追蹤文件。你將彙報軟件錯誤就像前面描述的其他問題一樣。(這句不盡人意)

第 2 章 編譯/安裝Wireshark

2.1. 須知

萬事皆有開頭,Wireshark也同樣如此。要想使用Wireshark,你必須:

  • 獲得一個適合您操作系統的二進制包,或者
  • 獲得源文件爲您的操作系統編譯。
  • 目前,只有兩到三種Linux發行版可以傳送Wireshark,而且通常傳輸的都是過時的版本。至今尚未有UNIX版本可以傳輸Wireshark。

Windows的任何版本都不能傳輸Wireshark.基於以上原因,你需要知道從哪能得到最新版本的Wireshark以及如何安裝它。

本章節向您展示如何獲得源文件和二進制包,如何根據你的需要編譯Wireshark源文件。

以下是通常的步驟:

    1. 下載需要的相關包,例如:源文件或者二進制發行版。
    1. 將源文件編譯成二進制包(如果您下載的是源文件的話)。這樣做做可以整合編譯和/或安裝其他需要的包。
    1. 安裝二進制包到最終目標位置。

2.2. 獲得源

你可以從Wireshark網站同時獲取源文件和二進制發行版。選擇您需要下載的鏈接,然後選擇源文件或二進制發行包所在的鏡像站點(儘可能離你近一點的站點)。

下載所有需要的文件 !

一般來說,除非您已經下載Wireshark,如果您想編譯Wireshark源文件,您可能需要下載多個包。這些在後面章節會提到。

注意

當你發現在網站上有多個二進制發行版可用,您應該選擇適合您平臺的版本,他們同時通常會有多個版本緊跟在當前版本後面,那些通常時擁有那些平臺的用戶編譯的。

基於以上原因,您可能想自己下載源文件自己編譯,因爲這樣相對方便一點。

2.3. 在UNIX下安裝之前

在編譯或者安裝二進制發行版之前,您必須確定已經安裝如下包:

    1. GTK+, The GIMP Tool Kit.
      您將會同樣需要Glib.它們都可以從www.gtk.org獲得。
    1. Libpcap , Wireshark用來捕捉包的工具
      您可以從www.tcpdump.org獲得。

根據您操作系統的不同,您或許能夠安裝二進制包,如RPMs.或許您需要獲得源文件並編譯它。

如果您已經下載了GTK+源文件,例 2.1 “從源文件編譯GTK+”提供的指令對您編譯有所幫助。

例 2.1. 從源文件編譯GTK+

gzip -dc gtk+-1.2.10.tar.gz | tar xvf -
./configure
make install

注意

您可能需要修改例 2.1 “從源文件編譯GTK+”中提供的版本號成對應您下載的GTK+版本。如果GTK的目錄發生變更,您同樣需要修改它。,tar xvf 顯示您需要修改的目錄。

注意

如果您使用Linux,或者安裝了GUN tar,您可以使用tar zxvfgtk+-1.2.10.tar.gz命令。同樣也可能使用gunzip –c或者gzcat而不是許多UNIX中的gzip –dc

注意

如果您在windows中下載了gtk+ 或者其他文件。您的文件可能名稱爲:gtk+-1_2_8_tar.gz

如果在執行例 2.1 “從源文件編譯GTK+”中的指令時有錯誤發生的話,你可以諮詢GTK+網站。

如果您已經下載了libpcap源,一般指令如例 2.2 “編譯、安裝libpcap” 顯示的那樣會幫您完成編譯。同樣,如果您的操作系統不支持tcpdump,您可以從tcpdump網站下載安裝它。

例 2.2. 編譯、安裝libpcap

gzip -dc libpcap-0.9.4.tar.Z | tar xvf -
cd libpcap-0.9.4
./configure
make
make install

注意

Libpcap的目錄需要根據您的版本進行修改。tar xvf命令顯示您解壓縮的目錄。

RedHat 6.x及其以上版本環境下(包括基於它的發行版,如Mandrake),您可以直接運行RPM安裝所有的包。大多數情況下的Linux需要安裝GTK+和Glib.反過來說,你可能需要安裝所有包的定製版。安裝命令可以參考 例 2.3 “在RedHat Linux 6.2或者基於該版本得發行版下安裝需要的RPM包”。
如果您還沒有安裝,您可能需要安裝需要的RPMs。

例 2.3. 在RedHat Linux 6.2或者基於該版本得發行版下安裝需要的RPM包

cd /mnt/cdrom/RedHat/RPMS
rpm -ivh glib-1.2.6-3.i386.rpm
rpm -ivh glib-devel-1.2.6-3.i386.rpm
rpm -ivh gtk+-1.2.6-7.i386.rpm
rpm -ivh gtk+-devel-1.2.6-7.i386.rpm
rpm -ivh libpcap-0.4-19.i386.rpm

注意

如果您使用RedHat 6.2之後的版本,需要的RMPs包可能已經變化。您需要使用正確的RMPs包。
在Debian下您可以使用apt-ge命令。apt-get 將會爲您完成所有的操作。參見例 2.4 “在Deban下安裝Deb”

例 2.4. 在Deban下安裝Deb

apt-get install wireshark-dev

2.4. 在UNIX下編譯Wireshark

如果在Unix操作系統下可以用如下步驟編譯Wireshark源代碼:

  • 1.如果使用Linux則解壓gzip'd tar文件,如果您使用UNIX,則解壓GUN tar文件。對於Linux命令如下:
tar zxvf wireshark-0.99.5-tar.gz

對於 UNIX版本,命令如下

gzip -d wireshark-0.99.5-tar.gz
tar xvf wireshark-0.99.5-tar

注意

使用管道命令行 gzip –dc Wireshark-0.99.5-tar.gz|tar xvf 同樣可以[9]

[9] 譯者注:看到別人翻譯Pipelin之類的,似乎就是叫管道,不知道是否準確

注意

如果您在Windows下下載了Wireshark,你會發現文件名中的那些點變成了下劃線。

  • 2.將當前目錄設置成源文件的目錄。
  • 3.配置您的源文件以編譯成適合您的Unix的版本。命令如下:
./configure

如果找個步驟提示錯誤,您需要修正錯誤,然後重新configure.解決編譯錯誤可以參考第 2.6 節 “解決UNIX下安裝過程中的問題 ”

  • 4.使用make命令將源文件編譯成二進制包,例如:
make
  • 5.安裝您編譯好的二進制包到最終目標,使用如下命令:
make install

一旦您使用make install安裝了Wireshark,您就可以通過輸入Wireshark命令來運行它了。

2.5. 在UNIX下安裝二進制包

一般來說,在您的UNIX下安裝二進制發行包使用的方式根據您的UNIX的版本類型而各有不同。例如AIX下,您可以使用smit安裝,Tru64 UNIX您可以使用 setld 命令。

2.5.1. 在Linux或類似環境下安裝RPM包

使用如下命令安裝Wireshark RPM包

rpm -ivh wireshark-0.99.5.i386.rpm

如果因爲缺少Wireshark依賴的軟件而導致安裝錯誤,請先安裝依賴的軟件,然後再嘗試安裝。REDHAT下依賴的軟件請參考例 2.3 “在RedHat Linux 6.2或者基於該版本得發行版下安裝需要的RPM包”

2.5.2. 在Debian環境下安裝Deb包

使用下列命令在Debian下安裝Wireshark

apt-get install Wireshark

apt-get 會爲您完成所有的相關操作

2.5.3. 在Gentoo Linux環境下安裝Portage

使用如下命令在Gentoo Linux下安裝wireshark以及所有的需要的附加文件

USE="adns gtk ipv6 portaudio snmp ssl kerberos threads selinux" emerge wireshark

2.5.4. 在FreeBSD環境下安裝包

使用如下命令在FreeBSD下安裝Wireshark

pkg_add -r wireshark

pkg_add會爲您完成所有的相關操作

2.6. 解決UNIX下安裝過程中的問題 [10]

[10] 譯者注:本人不熟悉UNIX/LINUX,這一段翻譯的有點雲裏霧裏,可能大家通過這部分想安裝Wireshark會適得其反,那就對不住了。下面個人說一下UNIX/LINUX下安裝方法。 UNIX/LINUX下安裝時,有兩種安裝方式,1是下載源碼包自己編譯,這種方式的好處是因爲下載源碼包是單一的,可以自行加以修改,編譯就是適合自己平臺的了。 2、是利用已經做好的發行包直接安裝,這種方法的好處是隻要下載到跟自己平臺對應的就可以,但缺點也在這裏,不是每個平臺都能找到合適的。不管是編譯安裝,還是使用發行包安裝,都需要有一些有些基本基本支持。比如Linux下的GTK+支持,捕捉包時需要用的libpcap. 這一點可以參考第 2.3 節 “在UNIX下安裝之前 ”。編譯的一般步驟是解壓,編譯,安裝(tar zxvf Wireshark-0.99.5-tar.gz;make;make install).直接安裝則是根據各自平臺安裝的特點。

安裝過程中可能會遇到一些錯誤信息。這裏給出一些錯誤的解決辦法:

如果configure那一步發生錯誤。你需要找出錯誤的原因,您可以檢查日誌文件config.log(在源文件目錄下),看看都發生了哪些錯誤。有價值的信息通常在最後幾行。

一般原因是因爲您缺少GTK+環境,或者您的GTK+版本過低。configure錯誤的另一個原因是因爲因爲缺少libpcap(這就是前面提到的捕捉包的工具)。

另外一個常見問題是很多用戶抱怨最後編譯、鏈接過程需要等待太長時間。這通常是因爲使用老式的sed命令(比如solaris下傳輸)。自從libtool腳本使用sed命令建立最終鏈接命令,常常會導致不可知的錯誤。您可以通過下載最新版本的sed解決該問題.

如果您無法檢測出錯誤原因。發送郵件到wireshark-dev說明您的問題。當然,郵件裏要附上config.log以及其他您認爲對解決問題有幫助的東西,例如make過程的追蹤。

2.7. 在Windows下編譯源

在Windows平臺下,我們建議最好是使用二進制包直接安裝,除非您是從事Wireshark開發的。 如果想了解關於Windows下編譯安裝Wireshark,請查看我們的開發WIKI網站來了解最新的開發方面的文檔。

2.8. 在Windows下安裝Wireshark

本節將探討在Windows下安裝Wireshark二進制包。

2.8.1. 安裝Wireshark

您獲得的Wireshark二進制安裝包可能名稱類似Wireshark-setup-x.y.z.exe.

Wireshark安裝包包含WinPcap,所以您不需要單獨下載安裝它。

您只需要在該鏈接下載Wireshark安裝包並執行它即可。除了普通的安裝之外,還有幾個組件供挑選安裝。

提示:儘量保持默認設置

如果您不瞭解設置的作用的話。

選擇組件[11]

[11] 涉及到過多的名次,軟件又沒有中文版,這裏及以後儘量不翻譯名稱

Wireshark(包括GTK1和GTK2接口無法同時安裝):

如果您使用GTK2的GUI界面遇到問題可以嘗試GTK1,在Windows下256色(8bit)顯示模式無法運行GTK2.但是某些高級分析統計功能在GTK1下可能無法實現。

  • Wireshark GTK1-Wireshark 是一個GUI網絡分析工具
  • Wireshark GTK2-Wireshark 是一個GUI網絡分析工具(建議使用GTK2 GUI模組工具)
  • GTK-Wimp-GTKWimp是詩歌GTK2窗口模擬(看起來感覺像原生windows32程序,推薦使用)
  • TSshark-TShark 是一個命令行的網絡分析工具

插件/擴展(Wireshark,TShark分析引擎):

  • Dissector Plugins-分析插件:帶有擴展分析的插件
  • Tree Statistics Plugins-樹狀統計插件:統計工具擴展
  • Mate - Meta Analysis and Tracing Engine (experimental):可配置的顯示過濾引擎,參考http://wiki.wireshark.org/Mate.
  • SNMP MIBs: SNMP,MIBS的詳細分析。
  • Tools/工具(處理捕捉文件的附加命令行工具

User’s Guide-用戶手冊-本地安裝的用戶手冊。如果不安裝用戶手冊,幫助菜單的大部分按鈕的結果可能就是訪問internet.

  • Editcap - Editcap is a program that reads a capture file and writes some or all of the packets into another capture file. /Editcap是一個讀取捕捉文件的程序,還可以將一個捕捉文件力的部分或所有信息寫入另一個捕捉文件。(文件合併or插入?)
  • Text2Pcap - Text2pcap is a program that reads in an ASCII hex dump and writes the data into a libpcap-style capture file./Tex2pcap是一個讀取ASCII hex,寫入數據到libpcap個文件的程序。
  • Mergecap - Mergecap is a program that combines multiple saved capture files into a single output file. / Mergecap是一個可以將多個播捉文件合併爲一個的程序。
  • Capinfos - Capinfos is a program that provides information on capture files. /Capinfos是一個顯示捕捉文件信息的程序。

“Additional Tasks”頁

  • Start Menu Shortcuts-開始菜單快捷方式-增加一些快捷方式到開始菜單
  • Desktop Icon-桌面圖標-增加Wireshark圖標到桌面
  • Quick Launch Icon-快速啓動圖標-增加一個Wireshark圖標到快速啓動工具欄
  • Associate file extensions to Wireshark-Wireshark文件關聯-將捕捉包默認打開方式關聯到Wireshark

Install WinPcap?”頁
Wireshark安裝包裏包含了最新版的WinPcap安裝包。

如果您沒有安裝WinPcap 。您將無法捕捉網絡流量。但是您還是可以打開以保存的捕捉包文件。

  • Currently installed WinPcap version-當前安裝的WinPcap版本
  • Install WinPcap x.x -如果當前安裝的版本低於Wireshark自帶的,該選項將會是默認值。
  • Start WinPcap service "NPF" at startup -將WinPcap的服務NPF在啓動時運行-這樣其它非管理員用戶就同樣可以捕捉包了。

更多關於WinPcap的信息:

安裝命令選項
您可以直接在命令行運行安裝包,不加任何參數,這樣會顯示常用的參數以供交互安裝。 在個別應用中,可以選擇一些參數定製安裝:

  • /NCRC 禁止CRC校檢
  • /S 靜默模式安裝或卸載Wireshark.注意:靜默模式安裝時不會安裝WinPcap!
  • /desktopicon 安裝桌面圖標,/desktopicon=yes表示安裝圖標,反之則不是,適合靜默模式。
  • /quicklaunchicon 將圖標安裝到快速啓動工具欄,=yes-安裝到工具欄,=no-不安裝,不填按默認設置。
  • /D 設置默認安裝目錄($INSTDIR),首選安裝目錄和安裝目錄註冊表鍵值,該選項必須設置到最後。即使路徑包含空格

例 2.5.

wireshark-setup-0.99.5.exe /NCRC /S /desktopicon=yes /quicklaunchicon=no /D=C:\Program Files\Foo

2.8.2. 手動安裝WinPcap

注意

事先聲明,Wireshark安裝時會謹慎對待WinPcap的安裝,所以您通常不必擔心WinPcap。
下面的WinPcap僅適合您需要嘗試未包括在Wireshark內的不同版本WinPcap。例如一個新版本的WinPcap發佈了,您需要安裝它。

單獨的WinPcap版本(包括alpha or beta版)可以在下面地址下載到

在下載頁面您將會發現WinPcap的安裝包名稱通常類似於”auto-installer”。它們可以在NT4.0/2000/XP/vista下安裝。

2.8.3. 更新Wireshark

有時候您可能想將您的WinPcap更新到最新版本,如果您訂閱了Wireshark通知郵件,您將會獲得Wireshark新版本發佈的通知,見第 1.6.4 節 “郵件列表”。

新版誕生通常需要8-12周。更新Wireshark就是安裝一下新版本。下載並安裝它就可以。更新通常不需要重新啓動,也不會更改過去的默認設置

2.8.4. 更新WinPcap

WinPcap的更新不是十分頻繁,通常一年左右。新版本出現的時候您會收到WinPcap的通知。更新WinPcap後需要重新啓動。

警告

在安裝新版WinPcap之前,如果您已經安裝了舊版WinPcap,您必須先卸載它。最近版本的WinPcap安裝時會自己卸載舊版。

2.8.5. 卸載Wireshark

你可以用常見方式卸載Wireshark,使用添加/刪除程序,選擇”Wireshark”選項開始卸載即可。

Wireshark卸載過程中會提供一些選項供您選擇卸載哪些部分,默認是卸載核心組件,但保留個人設置和WinPcap.

WinPcap默認不會被卸載,因爲其他類似Wireshark的程序有可能同樣適用WinPcap

2.8.6. 卸載WinPcap

你可以單獨卸載WinPcap,在添加/刪除程序選擇”WinPcap”卸載它。

注意

卸載WinPcap之後您將不能使用Wireshark捕捉包。

在卸載完成之後最好重新啓動計算機。

第 3 章 用戶界面

3.1. 須知

現在您已經安裝好了Wireshark,幾乎可以馬上捕捉您的一個包。緊接着的這一節我們將會介紹:

  • Wireshark的用戶界面如何使用
  • 如何捕捉包
  • 如何查看包
  • 如何過濾包
  • ……以及其他的一些工作。

3.2. 啓動Wireshark

你可以使用Shell命令行或者資源管理器啓動Wireshark.

提示

開始Wireshark時您可以指定適當的參數。參見第 9.2 節 “從命令行啓動Wireshark”

注意

在後面的章節中,將會出現大量的截圖,因爲Wireshark運行在多個平臺 ,並且支持多個GUI Toolkit(GTK1.x/2x),您的屏幕上顯示的界面可能與截圖不盡吻合。但在功能上不會有實質性區別。儘管有這些區別,也不會導致理解上的困難。

3.3. 主窗口

先來看看圖 3.1 “主窗口界面”,大多數打開捕捉包以後的界面都是這樣子(如何捕捉/打開包文件隨後提到)。

圖 3.1. 主窗口界面

和大多數圖形界面程序一樣,Wireshark主窗口由如下部分組成:

  • 1.菜單(見第 3.4 節 “主菜單”)用於開始操作。
  • 2.主工具欄(見第 3.13 節 “"Main"工具欄”)提供快速訪問菜單中經常用到的項目的功能。
  • 3.Fiter toolbar/過濾工具欄(見第 3.14 節 “"Filter"工具欄”)提供處理當前顯示過濾得方法。(見6.3:”瀏覽時進行過濾”)
  • 4.Packet List面板(見第 3.15 節 “"Pcaket List"面板”)顯示打開文件的每個包的摘要。點擊面板中的單獨條目,包的其他情況將會顯示在另外兩個面板中。
  • 5.Packet detail面板(見第 3.16 節 “"Packet Details"面板”)顯示您在Packet list面板中選擇的包德更多詳情。
  • 6.Packet bytes面板(見第 3.17 節 “"Packet Byte"面板”)顯示您在Packet list面板選擇的包的數據,以及在Packet details面板高亮顯示的字段。
  • 7.狀態欄(見第 3.18 節 “狀態欄”)顯示當前程序狀態以及捕捉數據的更多詳情。

注意

主界面的三個面版以及各組成部分可以自定義組織方式。見第 9.5 節 “首選項”

3.3.1. 主窗口概述

Packet list和Detail 面版控制可以通過快捷鍵進行。表 3.1 “導航快捷鍵”顯示了相關的快捷鍵列表。表 3.5 “"GO"菜單項”有關於快捷鍵的更多介紹

表 3.1. 導航快捷鍵
快捷鍵 描述
Tab,Shift+Tab 在兩個項目間移動,例如從一個包列表移動到下一個
Down 移動到下一個包或者下一個詳情
Up 移動到上一個包或者上一個詳情
Ctrl-Down,F8 移動到下一個包,即使焦點不在Packet list面版
Ctrl-UP,F7 移動到前一個報,即使焦點不在Packet list面版
Left 在Pactect Detail面版,關閉被選擇的詳情樹狀分支。如果以關閉,則返回到父分支。
Right 在Packet Detail面版,打開被選擇的樹狀分支.
Backspace Packet Detail面版,返回到被選擇的節點的父節點
Return,Enter Packet Detail面版,固定被選擇樹項目。

另外,在主窗口鍵入任何字符都會填充到filter裏面。

3.4. 主菜單

Wireshark主菜單位於Wireshark窗口的最上方。圖 3.2 “主菜單”提供了菜單的基本界面。

圖 3.2. 主菜單

主菜單包括以下幾個項目:

  • File

包括打開、合併捕捉文件,save/保存,Print/打印,Export/導出捕捉文件的全部或部分。以及退出Wireshark項.見第 3.5 節 “"File"菜單”

  • Edit

包括如下項目:查找包,時間參考,標記一個多個包,設置預設參數。(剪切,拷貝,粘貼不能立即執行。)見第 3.6 節 “"Edit"菜單”

  • View

控制捕捉數據的顯示方式,包括顏色,字體縮放,將包顯示在分離的窗口,展開或收縮詳情面版的地樹狀節點,……見第 3.7 節 “"View"菜單”

  • GO

包含到指定包的功能。見第 3.8 節 “"Go"菜單”

  • Capture

允許您開始或停止捕捉、編輯過濾器。見第 3.9 節 “"Capture"菜單”

  • Analyze

包含處理顯示過濾,允許或禁止分析協議,配置用戶指定解碼和追蹤TCP流等功能。見第 3.10 節 “"Analyze"菜單”

  • Statistics

包括的菜單項用戶顯示多個統計窗口,包括關於捕捉包的摘要,協議層次統計等等。見第 3.11 節 “"Statistics"菜單”

  • Help

包含一些輔助用戶的參考內容。如訪問一些基本的幫助文件,支持的協議列表,用戶手冊。在線訪問一些網站,“關於”等等。見第 3.12 節 “"Help"菜單”

本章鏈接介紹菜單的一般情況,更詳細的介紹會出現在後續章節。

提示

你可以直接點擊訪問菜單項,也可以使用熱鍵,熱鍵顯示在菜單文字描述部分。例如:您可以使用CTRL + K打開捕捉對話框。

3.5. "File"菜單

WireSharkFile菜單包含的項目如表表 3.2 “File菜單介紹”所示

圖 3.3. File菜單
表 3.2. File菜單介紹
菜單項 快捷鍵 描述
Open... Ctr+O 顯示打開文件對話框,讓您載入捕捉文件用以瀏覽。見第 5.2.1 節 “打開捕捉文件對話框”
Open Recent 彈出一個子菜單顯示最近打開過的文件供選擇。
Merg 顯示合併捕捉文件的對話框。讓您選擇一個文件和當前打開的文件合併。見第 5.4 節 “合併捕捉文件”
Close Ctrl+W 關閉當前捕捉文件,如果您未保存,系統將提示您是否保存(如果您預設了禁止提示保存,將不會提示)
Save Crl+S 保存當前捕捉文件,如果您沒有設置默認的保存文件名,Wireshark出現提示您保存文件的對話框。詳情第 5.3.1 節 “"save Capture File As/保存文件爲"對話框”

注意

  • 如果您已經保存文件,該選項會是灰色不可選的。
  • 您不能保存動態捕捉的文件。您必須結束捕捉以後才能進行保存
菜單項 快捷鍵 描述
Save As Shift+Ctrl+S 讓您將當前文件保存爲另外一個文件面,將會出現一個另存爲的對話框(參見第 5.3.1 節 “"save Capture File As/保存文件爲"對話框”)
File Set>List Files 允許您顯示文件集合的列表。將會彈出一個對話框顯示已打開文件的列表,參見第 5.5 節 “文件集合”
File Set>Next File 如果當前載入文件是文件集合的一部分,將會跳轉到下一個文件。如果不是,將會跳轉到最後一個文件。這個文件選項將會是灰色。
File set>Previous Files 如果當前文件是文件集合 的一部分,將會調到它所在位置的前一個文件。如果不是則跳到文件集合的第一個文件,同時變成灰色。
Export> as “Plain Text” File… 這個菜單允許您將捕捉文件中所有的或者部分的包導出爲plain ASCII text格式。它將會彈出一個Wireshark導出對話框,見第 5.6.1 節 “"Export as Plain Text File"對話框”
Export >as "PostScript" Files 將捕捉文件的全部或部分導出爲PostScrit文件。將會出現導出文件對話框。參見第 5.6.2 節 “"Export as PostScript File" 對話框”
Export > as "CVS" (Comma Separated Values Packet Summary)File... 導出文件全部或部分摘要爲.cvs格式(可用在電子表格中)。將會彈出導出對話框,見第 5.6.3 節 “"Export as CSV (Comma Separated Values) File" 對話框”。
Export > as “PSML” File… 導出文件的全部或部分爲PSML格式(包摘要標記語言)XML文件。將會彈出導出文件對話框。見第 5.6.4 節 “"Export as PSML File" 對話框”
Export as "PDML" File... 導出文件的全部或部分爲PDML(包摘要標記語言)格式的XML文件。將會彈出一個導出文件對話框,見第 5.6.5 節 “"Export as PDML File" 對話框”
Export > Selected Packet Bytes… 導出當前在Packet byte面版選擇的字節爲二進制文件。將會彈出一個導出對話框。見第 5.6.6 節 “"Export selected packet bytes" 對話框”
Print Ctr+P 打印捕捉包的全部或部分,將會彈出打印對話框。見第 5.7 節 “打印包”
Quit Ctrl+Q 退出Wireshark,如果未保存文件,Wireshark會提示是否保存。

3.6. "Edit"菜單

Wireshark的"Edit"菜單包含的項目見表 3.3 “Edit菜單項”

圖 3.4. "Edit"菜單

表 3.3. Edit菜單項

菜單項 快捷鍵 描述
Copy>As Filter Shift+Ctrl+C 使用詳情面版選擇的數據作爲顯示過濾。顯示過濾將會拷貝到剪貼板。
Find Packet... Ctr+F 打開一個對話框用來通過限制來查找包,見???
Find Next Ctrl+N 在使用Find packet以後,使用該菜單會查找匹配規則的下一個包
Find Previous Ctr+B 查找匹配規則的前一個包。
Mark Packet(toggle) Ctrl+M 標記當前選擇的包。見第 6.9 節 “標記包”
Find Next Mark Shift+Ctrl+N 查找下一個被標記的包
Find Previous Mark Ctrl+Shift+B 查找前一個被標記的包
Mark ALL Packets 標記所有包
Unmark All Packet 取消所有標記
Set Time Reference(toggle) Ctrl+T 以當前包時間作爲參考,見第 6.10.1 節 “包參考時間”
Find Next Reference 找到下一個時間參考包
Find Previous Refrence... 找到前一個時間參考包
Preferences... Shift+Ctrl+P 打開首選項對話框,個性化設置Wireshark的各項參數,設置後的參數將會在每次打開時發揮作用。詳見第 9.5 節 “首選項”

3.7. "View"菜單

表 3.4 “"View"菜單項”顯示了Wireshar View菜單的選項

圖 3.5. "View"菜單
表 3.4. "View"菜單項
菜單項 快捷鍵 描述
Main Toolbar 顯示隱藏Main toolbar(主工具欄),見第 3.13 節 “"Main"工具欄”
Filter Toolbar 顯示或隱藏Filter Toolbar(過濾工具欄)見第 3.14 節 “"Filter"工具欄”
Statusbar 顯示或隱藏狀態欄,見第 3.18 節 “狀態欄”
Packet List 顯示或隱藏Packet List pane(包列表面板),見第 3.15 節 “"Pcaket List"面板”
Packet Details 顯示或隱藏Packet details pane(包詳情面板).見第 3.16 節 “"Packet Details"面板”
Packet Bytes 顯示或隱藏 packet Bytes pane(包字節面板),見第 3.17 節 “"Packet Byte"面板”
Time Display Fromat>Date and Time of Day: 1970-01-01 01:02:03.123456 選擇這裏告訴Wireshark將時間戳設置爲絕對日期-時間格式(年月日,時分秒),見第 6.10 節 “時間顯示格式及參考時間”

注意

這裏的字段"Time of Day","Date and Time of Day","Seconds Since Beginning of Capture","Seconds Since Previous Captured Packet"和"Seconds Since Previous Displayed Packet"幾個選項是互斥的,換句話說,一次同時有一個被選中。

菜單項 快捷鍵 描述
Time Display Format>Time of Day: 01:02:03.123456 將時間設置爲絕對時間-日期格式(時分秒格式),見第 6.10 節 “時間顯示格式及參考時間”
Time Display Format > Seconds Since Beginning of Capture: 123.123456 將時間戳設置爲秒格式,從捕捉開始計時,見第 6.10 節 “時間顯示格式及參考時間”
Time Display Format > Seconds Since Previous Captured Packet: 1.123456 將時間戳設置爲秒格式,從上次捕捉開始計時,見第 6.10 節 “時間顯示格式及參考時間”
Time Display Format > Seconds Since Previous Displayed Packet: 1.123456 將時間戳設置爲秒格式,從上次顯示的包開始計時,見第 6.10 節 “時間顯示格式及參考時間”
Time Display Format > ------
Time Display Format > Automatic (File Format Precision) 根據指定的精度選擇數據包中時間戳的顯示方式,見第 6.10 節 “時間顯示格式及參考時間”

注意

"Automatic","Seconds"和"...seconds"是互斥的

菜單項 快捷鍵 描述
Time Display Format > Seconds: 0 設置精度爲1秒,見第 6.10 節 “時間顯示格式及參考時間”
Time Display Format > ...seconds: 0.... 設置精度爲1秒,0.1秒,0.01秒,百萬分之一秒等等。 見第 6.10 節 “時間顯示格式及參考時間”
Name Resolution > Resolve Name 僅對當前選定包進行解析第 7.6 節 “名稱解析”
Name Resolution > Enable for MAC Layer 是否解析Mac地址
Name Resolution > Enable for Network Layer 是否解析網絡層地址(ip地址),見第 7.6 節 “名稱解析”
Name Resolution > Enable for Transport Layer 是否解析傳輸層地址第 7.6 節 “名稱解析”

Colorize Packet List 是否以彩色顯示包

注意

以彩色方式顯示包會降低捕捉再如包文件的速度

菜單項 快捷鍵 描述
Auto Scrooll in Live Capture 控制在實時捕捉時是否自動滾屏,如果選擇了該項,在有新數據進入時, 面板會項上滾動。您始終能看到最後的數據。反之,您無法看到滿屏以後的數據,除非您手動滾屏
Zoom In Ctrl++ 增大字體
Zoom Out Ctrl+- 縮小字體
Normal Size Ctrl+= 恢復正常大小
Resiz All Columnus 恢復所有列寬

注意

除非數據包非常大,一般會立刻更改

菜單項 快捷鍵 描述
Expend Subtrees 展開子分支
Expand All 看開所有分支,該選項會展開您選擇的包的所有分支。
Collapse All 收縮所有包的所有分支
Coloring Rulues... 打開一個對話框,讓您可以通過過濾表達來用不同的顏色顯示包。這項功能對定位特定類型的包非常有用。見第 9.3 節 “包色彩顯示設置”
Show Packet in New Window 在新窗口顯示當前包,(新窗口僅包含View,Byte View兩個面板)
Reload Ctrl+R 重新再如當前捕捉文件

3.8. "Go"菜單

Wireshark "GO"菜單的內容見表 3.5 “"GO"菜單項”

圖 3.6. "GO"菜單
表 3.5. "GO"菜單項
菜單項 快捷鍵 描述
Back Alt+Left 跳到最近瀏覽的包,類似於瀏覽器中的頁面歷史紀錄
ForWard Alt+Right 跳到下一個最近瀏覽的包,跟瀏覽器類似
Go to Packet Ctrl+G 打開一個對話框,輸入指定的包序號,然後跳轉到對應的包,見第 6.8 節 “到指定的包”
Go to Corresponding Packet 跳轉到當前包的應答包,如果不存在,該選項爲灰色
Previous Packet Ctrl+UP 移動到包列表中的前一個包,即使包列表面板不是當前焦點,也是可用的
Next Packet Ctrl+Down 移動到包列表中的後一個包,同上
First Packet 移動到列表中的第一個包
Last Packet 移動到列表中的最後一個包

3.9. "Capture"菜單

"Capture"菜單的各項說明見表 3.6 “"Capture"菜單項”

圖 3.7. "Capture"菜單
表 3.6. "Capture"菜單項
菜單項 快捷鍵 描述
Interface... 在彈出對話框選擇您要進行捕捉的網絡接口,見第 4.4 節 “捕捉接口對話框”
Options... Ctrl+K 打開設置捕捉選項的對話框,(見第 4.5 節 “捕捉選項對話框”)並可以在此開始捕捉
Start Ctrl+E 立即開始捕捉,設置都是參照最後一次設置。
Stop Ctrl+E 停止正在進行的捕捉,見第 4.9.1 節 “停止捕捉”
Restart 正在進行捕捉時,停止捕捉,並按同樣的設置重新開始捕捉.僅在您認爲有必要時
Capture Filters... 打開對話框,編輯捕捉過濾設置,可以命名過濾器,保存爲其他捕捉時使用見第 6.6 節 “定義,保存過濾器”

3.10. "Analyze"菜單

"Analyze"菜單的各項見表 3.7 “"analyze"菜單項”

圖 3.8. "Analyze"菜單
表 3.7. "analyze"菜單項
菜單項 快捷鍵 描述
Display Filters... 打開過濾器對話框編輯過濾設置,可以命名過濾設置,保存爲其他地方使用,見第 6.6 節 “定義,保存過濾器”
Apply as Filter>... 更改當前過濾顯示並立即應用。根據選擇的項,當前顯示字段會被替換成選擇在Detail面板的協議字段
Prepare a Filter>... 更改當前顯示過濾設置,當不會立即應用。同樣根據當前選擇項,過濾字符會被替換成Detail面板選擇的協議字段
Firewall ACL Rules 爲多種不同的防火牆創建命令行ACL規則(訪問控制列表),支持Cisco IOS, Linux Netfilter (iptables), OpenBSD pf and Windows Firewall (via netsh). Rules for MAC addresses, IPv4 addresses, TCP and UDP ports, 以及 IPv4+混合端口 .以上假定規則用於外部接口
Enable Protocols... Shift+Ctrl+R 是否允許協議分析,見第 9.4.1 節 “"Enable Protocols"對話框”

[a] 看樣子他們有個關於這部分的章節

3.11. "Statistics"菜單

Wireshark "statistics"菜單項見表 3.8 “”

圖 3.9. "Statistics"菜單
表 3.8.
菜單項 快捷鍵 描述
Summary 顯示捕捉數據摘要,見第 8.2 節 “摘要窗口”
Protocol Hierarchy 顯示協議統計分層信息,見第 8.3 節 “"Protocol Hierarchy"窗口”
Conversations/ 顯示會話列表(兩個終端之間的通信),見???
EndPoints 顯示端點列表(通信發起,結束地址),見第 8.4.2 節 “"Endpoints"窗口”
IO Graphs 顯示用戶指定圖表,(如包數量-時間表)見第 8.6 節 “"IO Graphs"窗口”
Conversation List 通過一個組合窗口,顯示會話列表,見第 8.5.3 節 “協議指定“Conversation List/會話列表”窗口”
Endpoint List 通過一個組合窗口顯示終端列表,見第 8.4.3 節 “特定協議的"Endpoint List"窗口”
Service Response Time 顯示一個請求及其相應之間的間隔時間,見第 8.7 節 “服務相應時間”
ANSI 見第 8.8 節 “協議指定統計窗口”
GSM 見第 8.8 節 “協議指定統計窗口”
H.225... 見第 8.8 節 “協議指定統計窗口”
ISUP Message 見第 8.8 節 “協議指定統計窗口”
Types 見第 8.8 節 “協議指定統計窗口”
MTP3 見第 8.8 節 “協議指定統計窗口”
RTP 見第 8.8 節 “協議指定統計窗口”
GSM 見第 8.8 節 “協議指定統計窗口”
SIP 見第 8.8 節 “協議指定統計窗口”
VOIP Calls... 見第 8.8 節 “協議指定統計窗口”
WAP-WSP... 見第 8.8 節 “協議指定統計窗口”
HTTP HTTP請求/相應統計,見第 8.8 節 “協議指定統計窗口”
ISUP Messages 見第 8.8 節 “協議指定統計窗口”
ONC-RPC Programs 見第 8.8 節 “協議指定統計窗口”
TCP Stream Graph 見第 8.8 節 “協議指定統計窗口”

3.12. "Help"菜單

幫助菜單的內容見表 3.9 “”

圖 3.10. 幫助菜單
表 3.9.
菜單項 快捷鍵 描述
Contents F1 打開一個基本的幫助系統
Supported Protocols 打開一個對話框顯示支持的協議或工具
Manaul Pages>... 打開瀏覽器,顯示安裝在本地的手冊
Wireshark Online> 按照選擇顯示在線資源
About Wireshark 彈出信息窗口顯示Wireshark的一些相關信息,如插件,目錄等。

注意

  • 有些版本可能不支持調用WEB瀏覽器。如果是這樣,可能會隱藏此菜單。
  • 如果調用瀏覽器錯誤,檢查Wireshark首選項關於瀏覽器設置。

3.13. "Main"工具欄

主工具欄提供了快速訪問常見項目的功能,它是不可以自定義的,但如果您覺得屏幕屏幕過於狹小,需要更多空間來顯示數據。您可以使用瀏覽菜單隱藏它。
在主工具欄裏面的項目只有在可以使用的時候才能被選擇,如果不是可用則顯示爲灰色,不可選(例如:在未載入文件時,保存文件按鈕就不可用.)

圖 3.11.
表 3.10. 主工具欄選項
工具欄圖標 工具欄項 對應菜單項 描述
接口 Capture/Interfaces... 打開接口列表對話框,見第 4.3 節 “開始捕捉”

TODO: 最新版圖標已更換待完善

3.14. "Filter"工具欄
過濾工具欄用於編輯或顯示過濾器,更多詳情見第 6.3 節 “瀏覽時過濾包”

圖 3.12. 過濾工具欄
表 3.11.
工具欄圖標 工具欄項 說明
過濾 打開構建過濾器對話框,見第 6.7 節 “查找包”[a]
過濾輸入框 在此區域輸入或修改顯示的過濾字符,見第 6.4 節 “建立顯示過濾表達式”,在輸入過程中會進行語法檢查。如果您輸入的格式不正確,或者未輸入完成,則背景顯示爲紅色。直到您輸入合法的表達式,背景會變爲綠色。你可以點擊下拉列表選擇您先前鍵入的過濾字符。列表會一直保留,即使您重新啓動程序。

注意

  • 做完修改之後,記得點擊右邊的Apply(應用)按鈕,或者回車,以使過濾生效。
  • 輸入框的內容同時也是當前過濾器的內容(當前過濾器的內容會反映在輸入框)
工具欄圖標 工具欄項 說明
表達式... 標籤爲表達式的按鈕打開一個對話框用以從協議字段列表中編輯過濾器,詳見第 6.5 節 ““Filter Expression/過濾表達式”對話框”
清除 重置當前過濾器,清除輸入框
應用 應用當前輸入框的表達式爲過濾器進行過濾

注意

在大文件裏應用顯示過濾可能要很長時間

[a] 我看到的Filter按鈕貌似沒有圖標,可能只出現在0.99.4版中

3.15. "Pcaket List"面板

Packet list/包列表面板顯示所有當前捕捉的包

圖 3.13. "Packet list/包列表"面板

列表中的每行顯示捕捉文件的一個包。如果您選擇其中一行,該包得更多情況會顯示在"Packet Detail/包詳情","Packet Byte/包字節"面板.

在分析(解剖)包時,Wireshark會將協議信息放到各個列。因爲高層協議通常會覆蓋底層協議,您通常在包列表面板看到的都是每個包的最高層協議描述。

例如:讓我們看看一個包括TCP包,IP包,和一個以太網包。在以太網(鏈路層?)包中解析的數據(比如以太網地址),在IP分析中會覆蓋爲它自己的內容(比如IP地址),在TCP分析中會覆蓋IP信息。

包列表面板有很多列可供選擇。需要顯示哪些列可以在首選項中進行設置,見第 9.5 節 “首選項”

默認的列如下

  • No. 包的編號,編號不會發生改變,即使進行了過濾也同樣如此
  • Time 包的時間戳。包時間戳的格式可以自行設置,見第 6.10 節 “時間顯示格式及參考時間”
  • Source 顯示包的源地址。
  • Destination 顯示包的目標地址。
  • Protocal 顯示包的協議類型的簡寫
  • Info 包內容的附加信息

右擊包,可以顯示對包進行相關操作的上下文菜單。見第 6.3 節 “瀏覽時過濾包”

3.16. "Packet Details"面板

"Packet Details/包詳情"面板顯示當前包(在包列表面板被選中的包)的詳情列表。

圖 3.14. "Packet Details/包詳情"面板

該面板顯示包列表面板選中包的協議及協議字段,協議及字段以樹狀方式組織。你可以展開或摺疊它們。

右擊它們會獲得相關的上下文菜單。見第 6.4 節 “建立顯示過濾表達式”

某些協議字段會以特殊方式顯示

  • Generated fields/衍生字段 Wireshark會將自己生成附加協議字段加上括號。衍生字段是通過該包的相關的其他包結合生成的。例如:Wireshark 在對TCP流應答序列進行分析時。將會在TCP協議中添加[SEQ/ACK analysis]字段
  • Links/鏈接 如果Wireshark檢測到當前包與其它包的關係,將會產生一個到其它包的鏈接。鏈接字段顯示爲藍色字體,並加有下劃線。雙擊它會跳轉到對應的包。

3.17. "Packet Byte"面板

Packet Byte/包字節 面板以16進制轉儲方式顯示當前選擇包的數據

圖 3.15. Packet Byte/包字節面板

通常在16進制轉儲形式中,左側顯示包數據偏移量,中間欄以16進製表示,右側顯示爲對應的ASCII字符

根據包數據的不同,有時候包字節面板可能會有多個頁面,例如:有時候Wireshark會將多個分片重組爲一個,見第 7.5 節 “合併包”.這時會在面板底部出現一個附加按鈕供你選擇查看

圖 3.16. 帶選項的"Paket Bytes/包字節"面板

注意

附加頁面的內容可能來自多個包。

右擊選項按鈕會顯示一個上下文菜單顯示所有可用的頁的清單。如果您的面板尺寸過小,這項功能或許有所幫助

3.18. 狀態欄

狀態欄用於顯示信息
通常狀態欄的左側會顯示相關上下文信息,右側會顯示當前包數目

圖 3.17. 初始狀態欄

該狀態欄顯示的是沒有文件載入時的狀態,如:剛啓動Wireshark時

圖 3.18. 載入文件後的狀態欄

左側顯示當前捕捉文件信息,包括名稱,大小,捕捉持續時間等。
右側顯示當前包在文件中的數量,會顯示如下值
• P:捕捉包的數目
• D:被顯示的包的數目
• M: 被標記的包的數目.

圖 3.19. 已選擇協議字段的狀態欄

如果你已經在"Packet Detail/包詳情"面板選擇了一個協議字段,將會顯示上圖

提示

括號內的值(如上圖的app.opcode)可以作爲顯示過濾使用。它表示選擇的協議字段。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章