標籤:
學習電腦網路很久了,但總是局限於書本知識,感覺get不到重點。經師兄建議用wireshark抓包分析看看。
我自己以前並沒有做過抓包分析,所以這篇博文可能會有很多錯誤,只是我自己的一個記錄,路過的親們千萬別當成教程,以免誤入歧途....
TCP協議首部:
在Filter中設定為:ip.dst == 222.199.191.33 or ip.src == 222.199.191.33
這個地址是幹什麼的不知道,只是跟它的互動特別多,就選他了。
分析第一個包:
源地址:我自己電腦的IP,就不放上來了
Destination: 222.199.191.33 目的地址
TCP:表明是個TCP協議
Length:66 表明包的長度是66個位元組 ??
56739->443 :表明是從源地址的56739連接埠發送給目的地址的443連接埠
[SYN]表明這是一個TCP的同步請求,是TCP握手的第一步
Seq=0: TCP協議中的序號,這裡為0.
在TCP中第一個SYN 包所包含的 sequence 是隨機的,而第一個 SYN+ACK包裡的sequence 也是隨機的,wireshark 為了你便於觀察都使用相對值,初始化這兩個隨機值為0,後面的sequence 和 acknowledge 都在上面累加
Win=8192: 發送報文段一方的接收視窗。TCP協議中的欄位
Len=0: 傳送檔案TCP報文段Datas段的長度
MSS=1460: 最大報文段長度,指每個TCP報文段中資料欄位的最大長度。它不包含首部長度。是TCP首部中,選項中的欄位。
WS=256:視窗擴大因子;只能在串連建立階段確定;在串連期間他的值不能夠改變;新的視窗值=首部中定義的視窗值乘以2的(視窗擴大因子)的次方;由於視窗值不夠用。選項中的欄位。 ??書上說,視窗擴大選項佔3個位元組,其中一個位元組表示移位值S,S最大為14,新的視窗值等於TCP首部中的視窗位元從16增大到(16+S)。可這裡WS怎麼會等於256呢??
答:這裡的256是指視窗擴大了256倍,其S=8, 2的8次方 = 256. 符合S<=14. 開啟軟體下面TCP部分的詳細說明,有介紹。
SACK_PERM=1: 允許選擇確認。 TCP選項中的欄位。
恩,總算瞭解一點點了,這些資訊是TCP協議上的內容。
下面,分析一下詳細的內容,點擊上面的包,下面會出現詳細的資訊,比如下面這樣:
分別是什麼意思呢?
經我思索了半天,才恍然大悟,這是根據網路分層模型顯示的不同層的內容。
Frame 551: 對應的是這個包的概略資訊,裡面有我們是否對其做過標記,怎麼用彩色顯示之類的內容。
Ethernet II: 對應網路介面層,表明採用Ethernet II的太網標準框架格式。
Internet Protocal Version 4: 對應網路層,表明採用IPv4
Transmission Control Protocol:對應傳輸層,表明採用TCP協議。
下面,一個一個點開,看看裡面的詳細內容。
Ethernet II:
可以看到源和目標的硬體地址。
unicast表示單播。
??那一堆的...是什嗎? LG IG又是什嗎??
答:那些點是指要標明的欄位中非重要的資訊未,重要的位的數字被顯示出來了。
IPv4:
先把IP首部的格式放上來,有助於分析:
開始說明了使用的協議版本是IPv4, 首部長度是20位元組。
Differentiated Services Field:區分服務欄位
(DSCP 0x00: Default; ECN:0x00) 表示一個特定的上層協議所分配的重要層級,預設的DSCP值是0,相當於儘力傳送,ECN欄位被分為ECN-Capable Transport(ECT)bit和CEbit, ECT bit設定為0,表明該傳輸協議將忽略CE bit. CE bit 將由路由器設定,設定為0說明對末端節點不擠塞。
IP包的總長度為52位元組,標誌欄位為1302
識別欄位為0x02,表明沒有分區,片位移量為0,存留時間為128,上層協議為TCP
首部檢驗和下面的Good和Bad都是False, 我理解的是因為這是第一個包,不存在驗證問題。
TCP
TCP協議:
大多在上面顯示了。注意,下面Window scale:8,對應了上面紅字問題1的解釋。
【電腦網路】wireshark抓包分析1