Wireshark網絡抓包(一)——數據包、着色規則和提示

一、數據包詳細信息

Packet Details面板內容如下,主要用於分析封包的詳細信息。

幀:物理層、鏈路層

包:網絡層

段:傳輸層、應用層

1)Frame

物理層數據幀概況

2)Ethernet II

數據鏈路層以太網幀頭部信息

3)Internet Protocol Version 4

互聯網層IP包頭部信息

IP包頭:

4)Transmission Control Protocol

傳輸層數據段頭部信息,此處是TCP協議

TCP包頭:

5)Hypertext Transfer Protocol

應用層信息,此處是HTTP協議

 

二、着色規則

Wireshark默認有一組着色規則,可以在Packet Details面板中展開包的幀部分,查看着色規則。

在View | Coloring Rules中,打開着色規則窗口,可以自己創建、刪除、選中、去除。

 

三、Wireshark提示

1)Packet size limited during capture

說明被標記的那個包沒有抓全。一般是由抓包方式引起,有些操作系統中默認只抓每個幀的前96個字節。

4號包全長171字節,但只有96字節被抓到。

2)TCP Previous segment not captured

如果Wireshark發現後一個包的Seq大於Seq+Len,就知道中間缺失了一段。

如果缺失的那段在整個網絡包中找不到(排除了亂序),就會提示。

6號包的Seq是1449大於5號包的Seq+Len=1+1=1,說明中間有個1448字節的包沒被抓到,就是“Seq=1,Len=1448”。

3)TCP ACKed unseen segment

當Wireshark發現被Ack的那個包沒被抓到,就會提示。

32號包的Seq+Len=6889+1448=8337,說明下一個包Seq=8337。

而我們看到的是35號包的Seq=11233,意味着8337~11232這段數據沒抓到。

4)TCP Out-of-Order

當Wireshark發現後一個包的Seq號小於前一個包的Seq+Len時,就會認爲亂序,發出提示。

3362號包的Seq小於3360包的Seq,所以就是亂序。

5)TCP Dup ACK

當亂序或丟包發生時,接收方會收到一些Seq號比期望值大的包。沒收到一個這種包就會Ack一次期望的Seq值,提現發送方。

7號包期望的下一個Seq=30763,但8號包Seq=32223,說明Seq=30763包丟失,9號包發了Ack=30763,表示“我要的是Seq=30763”。

10號、12號、14號也都是大於30763的,因此沒收到一個就回復一次Ack。

6)TCP Fast Retransmission

當發送方收到3個或以上的【TCP Dup ACK】,就意識到之前發的包可能丟了,於是快速重傳它。

7)TCP Retransmission

如果一個包真的丟了,又沒有後續包可以在接收方觸發【Dup Ack】就不會快速重傳。

這種情況下發送方只好等到超時了再重傳。

1053號包發出後,一直沒有等到相應的Ack,只能在100多毫秒之後重傳了。

8)TCP zerowindow

包種的“win”代表接收窗口的大小,當Wireshark在一個包中發現“win=0”時,就會發提示。

9)TCP window Full

此提示表示這個包的發送方已經把對方所聲明的接收窗口耗盡了。

當Wireshark計算出Middle East已經有65535字節未被確認,就會發出此提示。

【TCP window Full】表示發送方暫時沒辦法再發送數據

【TCP zerowindow】表示發送方暫時沒辦法再接收數據

10)TCP segment of a reassembled PDU

Wireshark可以把屬於同一個應用層的PDU的TCP包虛擬地集中起來。

TCP層收到上層大塊報文後分解成段後發出去,主機響應一個查詢或者命令時如果要回應很多數據(信息)而這些數據超出了TCP的最大MSS時,

主機會通過發送多個數據包來傳送這些數據(注意:這些包並未被分片)。

11)Time-to-live exceeded(Fragment reassembly time exceeded)

表示這個包的發送方之前收到了一些分片,但由於某些原因遲遲無法組裝起來。

發佈了37 篇原創文章 · 獲贊 119 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章