/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
Wireshark 是一款非常棒的Unix和Windows上的開源網絡協議分析器。它可以實時檢測網絡通訊數據,也可以檢測其抓取的網絡通訊數據快照文件。可以通過圖形界麵瀏覽這些數據,可以查看網絡通訊數據包中每一層的詳細內容。Wireshark擁有許多強大的特性:包含有強顯示過濾器語言(rich display filter language)和查看TCP會話重構流的能力;它更支持上百種協議和媒體類型; 擁有一個類似tcpdump(一個Linux下的網絡協議分析工具)的名為tethereal的的命令行版本。
Wireshark擁有許多強大的特性
包含有強顯示過濾器語言(rich display filter language)和查看TCP會話重構流的能力;
它更支持上百種協議和媒體類型
擁有一個類似tcpdump(一個Linux下的網絡協議分析工具)的名為tethereal的的命令行版本。
在過去,網絡封包分析軟件是非常昂貴,或是專門屬於營利用的軟件。
Ethereal的出現改變了這一切
在GNU GPL通用許可證的保障範圍底下,使用者可以以免費的代價取得軟件與其程式碼,並擁有針對其原始碼修改及客製化的權利。Ethereal是目前全世界最廣泛的網絡封包分析軟件之一。
1.確定Wireshark的位置
如果沒有一個正確的位置,啟動Wireshark後會花費很長的時間捕獲一些與自己無關的數據。
2.選擇捕獲接口
一般都是選擇連接到Internet網絡的接口,這樣才可以捕獲到與網絡相關的數據。否則,捕獲到的其它數據對自己也沒有任何幫助。
3.使用捕獲過濾器
通過設置捕獲過濾器,可以避免產生過大的捕獲文件。這樣用戶在分析數據時,也不會受其它數據幹擾。而且,還可以為用戶節約大量的時間。
4.使用顯示過濾器
通常使用捕獲過濾器過濾後的數據,往往還是很複雜。為了使過濾的數據包再更細致,此時使用顯示過濾器進行過濾。
5.使用著色規則
通常使用顯示過濾器過濾後的數據,都是有用的數據包。如果想更加突出的顯示某個會話,可以使用著色規則高亮顯示。
6.構建圖表
如果用戶想要更明顯的看出一個網絡中數據的變化情況,使用圖表的形式可以很方便的展現數據分布情況。
7.重組數據
Wireshark的重組功能,可以重組一個會話中不同數據包的信息,或者是一個重組一個完整的圖片或文件。由於傳輸的文件往往較大,所以信息分布在多個數據包中。為了能夠查看到整個圖片或文件,這時候就需要使用重組數據的方法來實現。
說明:數據包列表區中不同的協議使用了不同的顏色區分。協議顏色標識定位在菜單欄View --> Coloring Rules。如下所示
WireShark 主要分為這幾個界麵
1. Display Filter(顯示過濾器), 用於設置過濾條件進行數據包列表過濾。菜單路徑:Analyze --> Display Filters。
2. Packet List Pane(數據包列表), 顯示捕獲到的數據包,每個數據包包含編號,時間戳,源地址,目標地址,協議,長度,以及數據包信息。 不同協議的數據包使用了不同的顏色區分顯示。
3. Packet Details Pane(數據包詳細信息), 在數據包列表中選擇指定數據包,在數據包詳細信息中會顯示數據包的所有詳細信息內容。數據包詳細信息麵板是最重要的,用來查看協議中的每一個字段。各行信息分別為
(1)Frame: 物理層的數據幀概況
(2)Ethernet II: 數據鏈路層以太網幀頭部信息
(3)Internet Protocol Version 4: 互聯網層IP包頭部信息
(4)Transmission Control Protocol: 傳輸層T的數據段頭部信息,此處是TCP
(5)Hypertext Transfer Protocol: 應用層的信息,此處是HTTP協議
TCP包的具體內容
從下圖可以看到wireshark捕獲到的TCP包中的每個字段。
4. Dissector Pane(數據包字節區)。
Wireshark過濾器設置
初學者使用wireshark時,將會得到大量的冗餘數據包列表,以至於很難找到自己自己抓取的數據包部分。wireshar工具中自帶了兩種類型的過濾器,學會使用這兩種過濾器會幫助我們在大量的數據中迅速找到我們需要的信息。
(1)抓包過濾器
捕獲過濾器的菜單欄路徑為Capture --> Capture Filters。用於在抓取數據包前設置。
如何使用?可以在抓取數據包前設置如下。
ip host 60.207.246.216 and icmp表示隻捕獲主機IP為60.207.246.216的ICMP數據包。獲取結果如下:
(2)顯示過濾器
顯示過濾器是用於在抓取數據包後設置過濾條件進行過濾數據包。通常是在抓取數據包時設置條件相對寬泛,抓取的數據包內容較多時使用顯示過濾器設置條件顧慮以方便分析。同樣上述場景,在捕獲時未設置捕獲規則直接通過網卡進行抓取所有數據包,如下
執行ping www.huawei.com獲取的數據包列表如下
觀察上述獲取的數據包列表,含有大量的無效數據。這時可以通過設置顯示器過濾條件進行提取分析信息。ip.addr == 211.162.2.183 and icmp。並進行過濾。
上述介紹了抓包過濾器和顯示過濾器的基本使用方法。在組網不複雜或者流量不大情況下,使用顯示器過濾器進行抓包後處理就可以滿足我們使用。下麵介紹一下兩者間的語法以及它們的區別。
注意:如果你選擇中文的話,請選擇合適的字體,具體在編輯->首選項設置->用戶接口->字體中設置!
Wireshark(前稱Ethereal)是一個網絡封包分析軟件。網絡封包分析軟件的功能是擷取網絡封包, 並盡可能顯示出最為詳細的網絡封包資料。網絡封包分析軟件的功能可想像成 "電工技師使用電表來量測電流、電壓、電阻" 的工作 - 隻是將場景移植到網絡上,並將電線替換成網絡線。
在過去,網絡封包分析軟件是非常昂貴,或是專門屬於營利用的軟件。Ethereal的出現改變了這一切。在GNU GPL通用許可證的保障範圍底下,使用者可以以免費的代價取得軟件與其程式碼,並擁有針對其原始碼修改及客製化的權利。Ethereal是目前全世界最廣泛的網絡封包分析軟件之一