一站式學習Wireshark(七):Statistics統計工具功能詳解與應用
Wireshark一個強大的功能在於它的統計工具。使用Wireshark的時候,我們有各種型別的工具可供選擇,從簡單的如顯示終端節點和會話到複雜的如Flow和IO圖表。本文將介紹基本網路統計工具。包括:捕捉檔案摘要(Summary),捕捉包的層次結構(Protocol Hirarchy), 會話(Conversations), 終端節點(Endpoints), HTTP。
更多資訊
Summary:
從statistics選單,選擇Summary:
如下圖的截圖所示,你會看到:
File:
捕捉檔案的一般資訊,如檔名和路徑,長度,等等
Time:
第一個包和最後一個包的時間戳,以及抓包過程持續時間
Capture:
顯示檔案捕捉於哪一個介面,以及評論視窗
在視窗的較低部分是Display視窗,展示抓包檔案統計資訊的摘要,包括:
捕捉報文的總數與百分比
顯示報文的數量(加上過濾條件之後)
標記報文的數量
何時使用:
這一選單簡單收集所有抓包資料,在定義了過濾條件的時候,將呈現過濾後的資料。當想要知道每秒的平均報文數或是位元組數時,可以使用此工具。
Protocol Hierarchy:
這一部分闡述如何確知網路執行資料。從statistics選單,選擇Protocol Hierarchy。
這個視窗現實的是捕捉檔案包含的所有協議的樹狀分支。如下圖所示:
Protocol Hierarchy視窗有如下欄位:
Protocol:
協議名稱
% Packets:
含有該協議的包數目在捕捉檔案所有包所佔的比例
Packets:
含有該協議的包的數目
Bytes:
含有該協議的位元組數
Mbit/s:
抓包時間內的協議頻寬
End Packets:
該協議中的包的數目(作為檔案中的最高協議層)
End Bytes:
該協議中的位元組數(作為檔案中的最高協議層)
End Mbit/s:
抓包時間內的協議頻寬(作為檔案中的最高協議層)
小貼士:
包通常會包含許多協議,有很多協議會在每個包中被統計。End Packets,End Bytes,End Mbit/s列是該層在抓包中作為最後一層協議的統計資料(也就是說,協議處於報文的頂層,並且沒有更高層資訊了)。例如,沒有載荷的TCP報文(例如,SYN報文),這一類沒有負載任何上層資訊的報文。這就是為什麼在Ethernet層,IPv4層和UDP層報文計數為0,因為沒有接收到以這些協議作為最後一層的幀。
何時使用:
值得注意的兩點是:
百分比永遠指的是相同協議層級。例如,
使用要點:
1. Percentage永遠參照的是相同協議層。例如,上例中81.03%是IPv4報文,8.85%是IPv6報文,10.12%是ARP報文。第二層之上的各協議所佔百分比總和是100%。
2. 另一方面,TCP佔總資料的75.70%,在TCP協議之內,只有12.74%的報文是HTTP,除此之外沒有其他統計。這是由於Wireshark只統計有HTTP頭的報文。它不統計如確認報文或資料包文這樣沒有HTTP頭的報文。
3. 為了使Wireshark同時統計資料包文,例如,TCP報文內部的HTTP報文,關閉Allow sub-dissector選項,對TCP資料流重新統計。可在Preferences選單或Packet Details皮膚中右鍵TCP來實現。
Conversations:
1. 在Statistics選單中,選擇Coversations。
2. 會看到以下視窗:
3. 可以選擇第2層乙太網統計資料,第3層IP統計資料,或第4層TCP或UDP統計資料。
4. 可以選擇以下統計工具:
- On layer 2(Ethernet):查詢並過濾廣播風暴或
- On layer 3 or 4(TCP/IP):通過網際網路路由器埠並行連線,檢視誰在向ISP傳輸資料
小貼士:
如果你看到網際網路上某一IP地址通過埠80(HTTP)向外傳輸大量資料流,你就需要將該地址複製入瀏覽器並且檢視你的使用者與哪一個網站通訊最多。
如果沒有得到結果,只需到標準DNS查詢站點(Google一下DNS lookup)檢視哪一種流量佔用了你的網線。
5. 也可以通過選擇位於視窗左下方的Limit to display filter核取方塊,將會話統計資訊進行顯示過濾。這樣,僅呈現所有通過顯示過濾條件的統計資料。
6.要檢視IP地址對應名稱,可以選擇Name resolution核取方塊。要檢視IP名稱解析,進入View | Name Resolution | Enable for Network layer進行啟用。
7. 對於TCP或UDP,可以在Packet list中對指定報文進行標記,之後從選單中選擇Follow TCP Stream或Follow UDP Stream。從而定義一個顯示過濾條件,僅顯示指定資料流。
使用要點:
網路會話是兩個指定終端之間的資料流。例如,IP會話是兩個IP地址之間的所有資料流,TCP會話包含了所有TCP連線。
通過Conversations列表,能看出很多網路問題。
乙太網會話統計
在Ethernet conversations statistics中,查詢以下問題:
- 大量的廣播風暴:可以看見較輕微的廣播風暴;而對於每秒數千甚至數萬個報文的嚴重廣播風暴,Wireshark會停止顯示資料並且螢幕凍結。只有斷開Wireshark連線時才能看見。
- 如果你看到來自某一MAC地址的大量資料,檢視會話第一部分的vendor ID,會給你一些導致問題的線索。即使MAC地址的第一部分標識了vendor,但它並不一定就標識了PC本身。這是由於MAC地址屬於PC上安裝的乙太網晶片廠商,而並不一定屬於PC製造商。如果無法識別資料流來源地址,可以ping嫌疑地址並通過ARP獲取它的MAC地址,在交換機中查詢該地址,如果有作業系統的話直接用find命令來定位。
IP會話統計
在IP conversations statistics中,查詢以下問題:
- 檢視收發大量資料流的IP地址。如果是你知道的伺服器(你記得伺服器的地址或地址範圍),那問題就解決了;但也有可能只是某臺裝置正在掃描網路,或僅是一臺產生過多資料的PC。
- 檢視掃描模式(scan pattern)。這可能是一次正常的掃描,如SNMP軟體傳送ping報文以查詢網路,但通常掃描都不是好事情。
- 一次典型的掃描模式如下圖所示:
本例中的掃描模式,一個IP地址,192.168.110.58,傳送ICMP報文至192.170.3.44, 192.170.3.45, 192.170.3.46, 192.170.3.47,等等(上圖僅顯示掃描的很小一部分)。這種情況下我們有一個蠕蟲病毒感染了網路上的所有PC,在它感染PC的時候,它就開始產生ICMP請求並將它們傳送至網路。這些窄帶連線(例如:WAN連線)可以很容易地被封鎖。
TCP/UDP會話統計
- 檢視帶有太多TCP連線的裝置。每一個PC合理的連線數是10到20個,上百個則是不正常的。
- 嘗試查詢無法辨識的埠號。它可能是正常的,但也可能是有問題的。下圖顯示了一次典型的TCP掃描:
Endpoints:
1. 從statistics選單,選擇Endpoints:
2. 出現以下視窗:
3. 此視窗中,能夠看到第2,3,4層的endpoints,也就是乙太網,IP, TCP或UDP。
使用要點:
這一工具列出了Wireshark發現的所有endpoints上的統計資訊。可以是以下任意一種情況:
- 少量乙太網endpoints(MAC地址)與大量IP終端節點(IP地址):可能的情況例如,一個路由器從很多遠端裝置收發報文,我們會看見路由器的MAC地址及很多IP地址經由此處。
- 少量IP終端節點與大量TCP終端節點:可能的情況是每一臺主機有很多個TCP連線。可能是有很多連線的伺服器的一個正常操作,也可能是一種網路攻擊(如SYN攻擊)。
以下是一個網路中心的抓包示例,一個內部網路有四個HP伺服器和一個Cisco路由器,MAC地址的第一部分已經解析了廠商名稱:
當我們檢視IPv4:191下的endpoints,我們看到有很多來自192.168.10.0, 192.168.30.0,以及其他網路地址。
HTTP:
1. 從statistics選單,選擇HTTP,將會出現以下視窗:
在HTTP子選單中,可以看到以下資訊:
Packet Counter:
每一個網站的報文數量。幫助識別有多少響應和請求。
Requests:
各網站的請求分佈。
Load Distribution:
各網站的負載分佈。
按照以下操作步驟檢視Packet Counter統計資訊:
1. 進入Statistics | HTTP | Packet Counter。
2. 顯示以下過濾視窗:
3. 此視窗中,可設定過濾條件以檢視符合過濾條件的統計資訊。如果想要檢視整個抓包檔案的統計資訊,留白不填。這就會顯示IP層之上的統計資訊,也就是所有HTTP報文。
4. 點選Create Stat按鈕,會看到以下視窗:
如果要檢視某一特定節點的HTTP統計資訊,可以通過display filter的方式配置過濾條件。
按照以下操作步驟檢視HTTP Requests統計資訊:
1. 進入Statistics | HTTP | Requests,出現以下視窗:
2. 選擇所需過濾條件。對於所有資料,留白。
3. 點選Create Stat按鈕,會出現以下視窗:
4. 要獲得指定HTTP主機的統計資訊,設定過濾條件http.host contains <host_name> 或 http.host==<host_name>。
5. 例如,通過設定過濾條件http.host contains ndi-com.com,可以獲得站點 www.ndi-com.com的統計資訊,如下圖所示:
6. 結果如下圖所示:
按照以下操作步驟檢視Load Distribution統計資訊:
1. 進入Statistics | HTTP | Load Distribution。
2. 出現以下視窗:
3. 選擇所需過濾條件。對於所有資料,留白。
4. 點選Create Stat按鈕,會出現以下視窗:
使用要點:
當我們開啟一個網頁,通常會向若干個URL傳送請求。本例中,我們開啟的其中一個網頁是www.cnn.com,並將我們導向edition.cnn.com。我們傳送了若干個請求:到root URL,到breaking_news URL,以及主頁上兩個其他位置。
本文系列目錄:
- 一站式學習Wireshark(一):Wireshark基本用法
- 一站式學習Wireshark(二):應用Wireshark觀察基本網路協議
- 一站式學習Wireshark(三):應用Wireshark IO圖形工具分析資料流
- 一站式學習Wireshark(四):網路效能排查之TCP重傳與重複ACK
- 一站式學習Wireshark(五):TCP視窗與擁塞處理
- 一站式學習Wireshark(六):狙擊網路高延時點
- 一站式學習Wireshark(七):Statistics統計工具功能詳解與應用
- 一站式學習Wireshark(八):應用Wireshark過濾條件抓取特定資料流
相關文章
- 一站式學習Wireshark(三):應用Wireshark IO圖形工具分析資料流
- 一站式學習Wireshark(二):應用Wireshark觀察基本網路協議協議
- 一站式學習Wireshark(一):Wireshark基本用法
- 一站式學習Wireshark(八):應用Wireshark過濾條件抓取特定資料流
- 一站式學習Wireshark(十):應用Wireshark顯示過濾器分析特定資料流(下)過濾器
- 一站式學習Wireshark(九):應用Wireshark顯示過濾器分析特定資料流(上)過濾器
- 『言善信』Fiddler工具 — 7、Fiddler統計(Statistics)詳解
- 一站式學習Wireshark(五):TCP視窗與擁塞處理TCP
- 應用統計學與R語言實現學習筆記(七)——擬合優度檢驗R語言筆記
- 詳解Python中sys模組的功能與應用Python
- 學習的學習之七—如何應用元知識
- 一站式學習Wireshark(四):網路效能排查之TCP重傳與重複ACKTCP
- Javascript 設計模式系統講解與應用——學習筆記10-狀態模式JavaScript設計模式筆記
- Hive學習之三 《Hive的表的詳解和應用案例詳解》Hive
- Wireshark學習筆記(一)常用功能案例和技巧筆記
- 一站式學習Wireshark(六):狙擊網路高延時點
- wireshark學習筆記筆記
- wireshark抓包學習
- IBM SPSS Statistics 26 for Mac(統計分析與spss的應用)26.0.0.2中文啟用版IBMSPSSMac
- Git應用詳解第七講:Git refspec與遠端分支的重要操作Git
- 並查集詳解與應用並查集
- ReentrantLock(重入鎖)功能詳解和應用演示ReentrantLock
- 基於Java+SpringBoot+Mysql線上課程學習教育系統功能設計與實現七JavaSpring BootMySql
- CTF學習(6):Misc(wireshark)
- 瞭解使用wireshark抓包工具
- 計算機視覺與深度學習應用關係計算機視覺深度學習
- Go通道機制與應用詳解Go
- 詳解數倉物件設計中序列SEQUENCE原理與應用物件
- 【Statistics】禁用11g的統計資料自動收集功能
- 【Statistics】禁用10g的統計資料自動收集功能
- Android系統服務DropBoxManagerService詳解與實踐應用Android
- Go語言核心36講(Go語言實戰與應用七)--學習筆記Go筆記
- 深度學習的應用與實踐深度學習
- 強化學習之原理與應用強化學習
- Redis有序集合命令ZREVRANGEBYSCORE詳解與應用RedisVR
- 深度學習、資訊理論與統計學深度學習
- 詳解Parcel:快速,零配置web應用打包工具Web
- Deferred statistics publish-延遲統計資訊釋出功能介紹