之前分享過幾篇關於wireshark處理工作中故障的文章,有小夥伴問有沒有wireshark入門的介紹。個人的感覺來看,wireshark僅僅是個工具,對不同工作內容的小夥伴來說,目的和使用功能側重點也不同。從本次開始,我將會以網路工程師的角度,從安裝-工具的功能-各種協議分析和-工作中的案例,來介紹我所瞭解的wireshark,如果可能,我也會出和文章配套的影片與大家交流。
1 下載安裝(下載地址:https://www。wireshark。org/)
wireshark下載介面
目前最新版本為3。4。0,對於使用wireshark的小夥伴來說,通常都是工程師或者從事IT相關工作,下載及安裝過程就不做贅述,wireshark3。0以後會根據作業系統語言選擇軟體的語言,開啟軟體如下圖:
wireshark軟體主介面
2 選單欄介紹。工欲利其事必先利其器,在進行抓包前,先來了解下軟體的選單、工具和常用的設定。
2。1
編輯(Edit)
選擇第一個介紹編輯,是因為有些小夥伴安裝早期英文版本,又不擅長英語的,可以在此功能內切換中文。
首選項(Preferences)
點選
Edit-Preferences
進入單獨的選單頁面。
Wireshark-Edit
外觀(Appearance)
Wireshark-Edit-Appearances
1。 保持與上次的使用者習慣一致,例如視窗的大小、位置等等;
2。 主介面open選項的顯示的檔案內容。預設為最近開啟的檔案
wireshark最近開啟檔案
可以修改為儲存pcap檔案的資料夾,方便快速開啟待分析的資料包,例如修改為存放pcap資料夾的目錄;
修改Open路徑
修改open路徑後的主介面
3。抓包主介面顯示的最近開啟檔案數量以及顯示的過濾規則數量,預設都是10個,全部修改為1後,對比一下效果:
wireshark主介面展示最近開啟檔案-修改前
wireshark主介面展示最近開啟檔案-修改後
wireshark抓包介面過濾規則-修改前
wireshak抓包介面過濾規則-修改後
4 確認儲存和補全;
5 抓包分析介面的標題,對實際使用沒有太大關係;
6 語言選單,習慣中文的可以在此切換。
wireshark修改預設語言
· Columns
wireshark抓包介面顯示列表內容
在抓包分析介面的資料包列表展示的列,包括常用的:編號(No。)-時間(Tme)-源地址(Source)-目的地址(Destination)-協議(Protocol)-長度(Length)-資訊(Info),如下圖
wireshark抓包預設介面-列表
有時為了方便,需要特殊的顯示資訊,例如增加Trunk介面的vlan-id的顯示,也可以列表欄右鍵,修改顯示內容及相關引數;
wireshark新增列表項
wireshark新增列表後顯示
· Font and Colors,修改預設視窗的字型及標註顏色等
wireshark預設視窗顏色和字型
· 佈局(Layout)
wireshark預設佈局
1 資料展示佈局,預設方式:資料包列表-資料包結構-資料包內容位,可以透過佈局修改,比如預設的Phase2
預設佈局
Phase2佈局
2 資料包類別的格式,可以修改的是顯示資料包分割線(show packet separate),方便檢視不同行的資料包內容,對比如下
預設介面
新增分割線
· 捕獲,更習慣稱為抓包(Capture)
抓包設定項
1 預設介面,例如筆記本經常使用無線網絡卡抓包,可以將網絡卡選擇為無線網絡卡,這樣在開啟wireshark後無需再手動選擇網絡卡,尤其在本機裝了虛擬機器後,過多網絡卡選擇提升效率;
2 使用混雜模式抓取資料包,類似VMware裡設定網絡卡的模式;
3 使用pcap格式抓取和儲存資料包;
4 實時更新資料包,在抓包同時觀察異常時,保證資料包的實時更新;
5 實時滾屏,當抓取的資料包list滿屏時,實施翻頁;
6 啟動軟體時不載入網絡卡列表,建議載入;
7 禁用外部抓包介面,建議開啟外部抓包介面。當需要抓取外部主機的資料包,並且不方便在遠端安裝wireshark或無法使用tcpdump時,可以透過使用外部介面抓取資料包,我們在後面介紹抓取介面時,詳細介紹。
· 過濾器按鈕(Filter Buttons) 可以自定義過濾規則,在抓包過程中快速的過濾,例如要過濾80埠(test2)等,如下圖
修改過濾鍵
在抓包介面新增新定義的過濾規則,然後可以在過濾條的右側出現,方便快速的過濾資料包,如下圖:
新增過濾規則
過濾規則快捷介面
· 名稱解析(Name resolution) 將抓到的資料包,解析到相應的名稱,建議保留預設,開啟過多的解析會影響抓包效率和系統資源的消耗。
wireshark名稱解析
1 基於抓取到的MAC地址解析為廠商名稱,如下圖:
wireshark解析MAC
2 解析傳輸層協議,例如基於23解析telnet,基於80解析HTTP,如下圖:
wireshak解析L4協議
3 透過IP地址解析,例如ping ,開啟ip解析後,直接在ip顯示,如下圖
wireshark解析L3協議
4 我理解為使用抓包機器解析地址
5 使用外部的DNS伺服器解析
6 自定義DNS伺服器
7 透過和8配合,匯入mib庫後,在抓到的資料包時同時解析相應的OID,例如在ZABBIX監控裝置時,可以透過抓包判斷監控的內容。
· 協議(Protocols)是針對各種協議引數的更精細設定,因為工作性質的問題多數協議並未涉及,更多的還是在IP、TCP、UDP、DHCP、DNS等網路協議,下面以IPv4為例看一下相關內容。
wireshark Protocols
· RSA Keys,匯入私鑰,以便做TSL/SSL的認證,有關TSL/SSL的相關知識可以參考之前寫的文章(連線)
· Statistics,主要編輯資料包的大小範圍,主要為static裡的統計資料進行分類(Statistics-Packet Length),以便判斷和處理故障,例如網路中存在大量小包:
Wireshark資料包大小規則
· Advanced,包含協議的bool值,設定的儲存方式,顏色的擴充套件方案等等,本人很少修改。
· 模板(Profile),Edit-Configration Profiles,可以在wireshark主介面的右下角看到當前模板,右鍵可以進行快速的切換(預設使用Deafult模板),目的是在不同的環境和診斷要求下,快速的切換過濾規則,顏色方案等。
例如之前配置都在Default模板下,我們做過幾條測試Filter規則,在新建一個模板,起名test,對一下介面:
wireshark修改模板
不同模板顯示對比
· 註釋及取消註釋(Packet Comments/Delete All Packet Comments),可以對抓取的資料包進行標註,以便在多人共同分析時,能快速獲取之前診斷的註釋。註釋在Statistics-capture File Properties裡面檢視,如下圖新增和檢視註釋
wireshark註釋
wireshark檢視註釋
· Time Reference(相對時間),通常在一條資料流對其中一個數據包進行標記,而後的相同資料流以該標記的資料包顯示相對時間。例如一條TCP流,或者2次ping的時間差,以此來判斷資料傳輸過程中的相對時延,如下圖icmp的時間間隔,在預設以及標記了相對時間後的截圖:
wireshark預設time顯示
wireshark相對時間顯示
· Ignore(忽略資料包),選擇忽略的資料包,通常和File-Save配合使用,以便過濾掉無需關注的資料包並且儲存,方便之後診斷的工程師忽略無關資訊。
· Mark(標記),對關鍵的資料包進行標記,也可以和File-Save進行結合使用,方便後續快速找到關鍵資料包。
關於Wireshark的Edit選單就介紹到這裡,下一篇我們繼續介紹其他工具選單,如有任何建議請留言。