Web:使用wireshark抓取網絡報文並分析

Wireshark

Wireshark(Ethereal)是一個免費的網絡報文分析軟件。網絡報文分析軟件的功能是抓取網絡報文,並逐層顯示報文中各字段取值。網絡報文分析軟件有個形象的名字“嗅探工具”,像一隻獵狗,忠實地守候在接口旁,抓獲進出該進口的報文,分析其中攜帶的信息,判斷是否有異常,是網絡故障原因分析的一個有力工具。網絡報文分析軟件曾經非常昂貴,Ethereal/wireshark 開源軟件的出現改變了這種情況。在GNUGPL通用許可證的保障範圍底下,使用者可以以免費的代價取得軟件與其源代碼,並擁有針對其源代碼修改及客製化的權利。Ethereal/wireshark 是目前世界使用最廣泛的網絡報文分析軟件之一。

Wireshark網絡分析器的官網是:https://www.wireshark.org/,目前,Wireshark的穩定發行版本爲3.2.2

軟件的基本應用

雙擊軟件的圖標,軟件運行後,會顯示如下的客戶端界面。界面主要包含三個區域,從上到下,分別是工具區、捕獲過濾器和網卡列表。在網卡列表中雙擊其中的一個網絡設備即可開始捕獲網絡分組,又或單擊選擇一個網絡設備,然後再點擊工具區中的最左側的藍色斜三角圖標,也可開始捕獲網絡分組。如果想停止捕獲網絡分組,再點擊工具區上的紅色正方形圖標即可。
在這裏插入圖片描述
如下爲捕獲到的結果,結果主要分爲三個區域,最上方是請求和響應列表,每一條記錄表示一次請求或響應的交互。中間是對選中的“交互”進行解析後的結果。最下方是原始的數據格式。
在這裏插入圖片描述

注意事項

  • 要學會使用Wireshark中的過濾器,畢竟要在大量的網絡分組中尋找到自己要找的分組是非常費時費力的。下面介紹幾個過濾規則:1、tcp,選出TCP協議的分組;2、http,選出HTTP協議的分組;3、ip.src ==192.168.1.102,選出源地址爲192.168.1.102的分組;4、ip.src==47.95.164.112 or ip.dst==47.95.164.112,選出源地址和目標地址均爲47.95.164.112的分組;5、tcp.flags.syn==1,選出TCP同步位報文段。
  • 分組列表的面板中顯示的信息包括:編號,時間,源地址,目標地址,協議,長度,以及分組信息。 可以看到不同的協議用了不同的顏色顯示,當然也可以在視圖-->着色規則中修改顯示顏色的規則。
  • OSI七層模型分別爲:物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層和應用層;TCP/IP五層模型分別爲:物理層、數據鏈路層、網絡層、傳輸層和應用層。
  • 在界面中間顯示的是分組詳細信息,在其中,可查看分組在每一層協議中對應的字段信息。在分組信息中,每一行內容會分別與TCP/IP網絡模型的五層對應:Frame: 物理層的數據幀概況 -->物理層】,Ethernet II: 數據鏈路層以太網幀頭部信息 -->【數據鏈路層】,Internet Protocol Version 4: 互聯網層IP包頭部信息–>【網絡層】,Transmission Control Protocol: 傳輸層的數據段頭部信息,此處是TCP–>【傳輸層】,Hypertext Transfer Protocol: 應用層的信息,此處是HTTP協議–>【應用層】

Wireshark的使用用例

1、查看本機的網絡適配器列表

點擊:捕獲–>選項,即可打開“捕獲接口”界面,如下爲本機的網絡適配器列表。
在這裏插入圖片描述
展開適配器,可得到其地址,如下所示
在這裏插入圖片描述

記錄一次TCP三報文握手過程

先在命令行窗口中輸入ipconfig命令以查看IP地址。如下圖所示,本機連接的是WiFi,其IPv4地址爲:192.168.8.102。
在這裏插入圖片描述
TCP的連接建立就是一次握手,在TCP的連接建立過程中,也即在一次握手中,客戶端(A)和服務器(B)之間交換了三個報文,這三個報文分別是:【A-->B】連接請求報文段(SYN=1,seq=x(x一般爲0))、【B-->A】同步確認報文段(SYN=1,ACK=1,seq=y(y也一般爲0),ack=x+1)、【A-->B】確認報文段(ACK=1,seq=x+1,ack=y+1)。如下爲用三報文握手建立TCP連接的示意圖。
在這裏插入圖片描述
以CSDN網站爲例,其網址爲:https://www.csdn.net/。在Wireshark開始捕獲分組後,再在瀏覽器中輸入CSDN的網址,讓其轉至CSDN首頁。Wireshark在這一過程中抓到了許多分組,通過分析這些分組可知,本機的IP地址爲:192.169.8.102,CSDN的IP地址爲:47.95.164.112。

如下爲在一次握手中,交換的第一個報文,這個報文叫連接請求報文,由於其首部的同步位SYN=1,所以也叫同步報文段。通過這個報文可知,同步位SYN=1,序號seq=0,源IP地址是本機,目的IP地址是CSDN。
在這裏插入圖片描述
如下爲在一次握手中,交換的第二個報文,這個報文叫同步確認報文段。通過這個報文可知,同步位SYN=1,確認位ACK=1,序號seq=0,確認號ack=1,源IP地址是CSDN,目的IP地址是本機。
在這裏插入圖片描述
如下爲在一次握手中,交換的第三個報文,這個報文叫確認報文段。通過這個報文可知,確認位ACK=1,序號seq=1,確認號ack=1,源IP地址是本機,目的IP地址是CSDN。
在這裏插入圖片描述

參考

https://blog.csdn.net/budding0828/article/details/86560467?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
https://www.cnblogs.com/bylijian/p/8565601.html
https://www.cnblogs.com/Chilam007/p/6973990.html

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