Wireshark網絡分析工具(一)

關於Wireshark,熟悉網絡或網絡性能方面的同窗應該知道,使用Wireshark工具經過抓取數據包,對系統網絡問題進行分析,該工具簡單、易用、易學!linux

百度百科上面是這樣描述的:Wireshark(前稱Ethereal)是一個網絡封包分析軟件,網絡封包分析軟件的功能是擷取網絡封包,並儘量顯示出最爲詳細的網絡封包資料。Wireshark使用WinPCAP做爲接口,直接與網卡進行數據報文交換。windows

Wireshark抓包原理:把Wireshark主機上的網卡接入有線或無線網絡開始抓包時,介於有線網卡和抓包引擎之間的軟件驅動程序便會參與其中。在Windows和UNIX平臺上,分別對應WinPacp和Libcap驅動程序,對於無線網卡,抓包時啓動AirPacp驅動程序。服務器

學習Wireshark網絡分析,先了解OSI網絡協議模型共分爲七層:網絡

應用層    指網絡操做系統和具體的應用程序,對應WWW服務器、FTP服務器等應用軟件架構

表示層    數據語法的轉換、數據的傳送等tcp

會話層   創建起兩端之間的會話關係,並負責數據的傳送工具

傳輸層   負責錯誤的檢查與修復,以確保傳送的質量,是TCP工做的地方。(報文)性能

網絡層(互聯網層) 提供了編址方案,IP協議工做的地方(數據包)學習

數據鏈路層  將由物理層傳來的未經處理的位數據包裝成數據幀ui

物理層   對應網線、網卡、接口等物理設備(位)

 

1、wireshark工具界面介紹

抓取網絡包後,wireshark面板每一行對應一個網絡報文,每個網絡報文包含的信息:

報文接收時間(相對開始抓取的時間點)、源地址IP、目標地址IP、協議以及報文信息。

Frame:物理層的數據幀概況

Ethernet II :數據鏈路層以太網頭部幀

Internet Protocol Version 4:互聯網層IP包頭的信息

Transmission Control Protocol:傳輸層的數據段頭部信息,此處是TCP協議

Hypertext Transfer Protocol:應用層的信息,此處是HTTP協議

 

在Wireshark中關於數據包的叫法有三個術語,分別是幀、包、段

 

因此對於包結構的分析關鍵在於三個知識點的學習:http header, tcp header, ip header

 

2、Wireshark架構

wireshark能夠被劃分爲四個主要模塊:Capture Core,WireTap, Protocol Interpreter and Dissector和GUIintrerface。其中Capture Core使用pcap(windows下爲winpcap,linux下爲libpcap)抓取網絡數據包,獲取數據包後,WireTap把它保存爲二進制文件,interpreter and dissector就是把二進制文件展示成用戶容易理解的文本形式,其中dissector又分爲build-in和plug-in兩種,build-in很好理解,plug-in在1.3節會詳細介紹一下;GUIinterface,顧名思義就是用戶界面了。

架構圖:

 

 

3、過濾抓包

Wireshark抓包過濾器運做機制是基於tcpdump程序的。

Wireshark的Filter分爲兩種,一種爲Capture Filter,另外一種是Display Filter。

啓動wireshark後,在抓包前,能夠使用Capture Filter進行過濾抓包

過濾條件:

#針對服務器IP地址進行過濾抓取

host 58.67.220.228

#針對抓取請求端口進行過濾抓取

port 9080

#只抓取源或目的端口範圍的2000到2500之間的TCP數據包

tcp portrange 2000-2500

 

另外一種是Display Filter,這是在抓取包以後,在wireshark界面上操做,進行過濾信息

 

相關文章
相關標籤/搜索