使用wireshark分析tcp報文

TCP協議在網絡過程中,是一個最常見不過的協議了。在分析tcp網絡協議報文時,藉助當前強力的工具wireshark可以起到很好的輔助作用。

首先抓取了一個簡單的http請求報文,

使用wireshark分析tcp報文

使用wireshark分析tcp報文

選取其中的一次完整請求,追蹤tcp流:

使用wireshark分析tcp報文

可以在報文中看到tcp的3次握手,以及http 的request 和 response ,還有tcp的4次斷開。

另外整個封包列表的面板中也有顯示,編號,時間戳,源地址,目標地址,協議,長度,以及封包信息。 可以看到不同的協議用了不同的顏色顯示,當然也可以在View ->Coloring Rules中修改顯示顏色的規則。

TCP 基本概念

使用wireshark分析tcp報文

使用wireshark分析tcp報文

上圖圈起來的就是封包詳細信息(Packet Details Pane):

這是最重要的信息,用來查看協議中的每一個字段。而OSI七層模型分別為:物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。

在封包信息中,每行對應的含義及在OSI模型中的對應關係如下:

Frame: 物理層的數據幀概況 ->對應OSI七層模型中的【物理層】

Ethernet II: 數據鏈路層以太網幀頭部信息 ->對應OSI七層模型中的【數據鏈路層】

Internet Protocol Version 4: 互聯網層IP包頭部信息 ->對應OSI七層模型中的【網絡層】

Transmission Control Protocol: 傳輸層T的數據段頭部信息,此處是TCP ->對應OSI七層模型中的【傳輸層】

Hypertext Transfer Protocol: 應用層的信息,此處是HTTP協議 ->對應OSI七層模型中的【應用層】

這根據報文的抓取的設備以及報文被封裝的程度,會有不同的顯示,比如截圖裡面的報文是在虛擬機上抓取的,就不會有物理設備的報文信息,在有些網絡拓撲環境下,還會有封裝成vlan或vxlan的報文,就可以在wireshark那裡成功看到。

不同的模型層和不同協議報文,對應的報文頭部長度是不一致的,所以在計算報文的lengeth時,要考慮這些地方。

tcp 3次握手和4次斷開的報文梳理

首先示例圖來說明下tcp的連接/數據傳輸/斷開的過程:

使用wireshark分析tcp報文

百度百科解釋TCP三次握手過程如下:

第一次握手:建立連接時,客戶端發送syn包(syn=j)到服務器,並進入SYN SENT狀態,等待服務器確認;SYN:即是同步序列編號(Synchronize Sequence Numbers);

第二次握手:服務器收到syn包,必須確認客戶的SYN(ack=j+1),同時自己也發送一個SYN包(syn=k),即SYN+ACK包,此時服務器進入SYN RECV狀態;

第三次握手:客戶端收到服務器的SYN+ACK包,向服務器發送確認包ACK(ack=k+1),此包發送完畢,客戶端和服務器進入ESTABLISHED(TCP連接成功)狀態,完成三次握手。

結合報文情況對比查看;

client ----> SYN seq=480449269 ------> server

Server -----> SYN seq=1569499109,ACK=480449270 ----> client

Clinet (seq = 480449270) -----> ACK=1569499110 ------> server

如下截圖:

使用wireshark分析tcp報文

這裡的seq num 顯示的是絕對值,所以在單純分析本次請求流時,絕對值的seq num可能不易與閱讀,可以調整wireshark配置,查看相對seq num。

使用wireshark分析tcp報文

使用wireshark分析tcp報文

數據報文中,第1,2,3條數據包是進行tcp 3次握手,

而,第4 到 9 是進行的數據傳輸,這裡是完成了一次http 請求;

第10,11,12,13 四條報文是進行了tcp的4次斷開。

使用wireshark分析tcp報文

在數據傳輸中的報文,需要注意報文大小,length和 tcp傳輸窗口大小,大包/小包,切片/聚合等等,場景各種都有需要靈活分析,經驗推理。

tcp協議4次斷開:

關於斷開請求的報文數據這一塊,一般會主要關心是那端主要發起的FIN報文標記進行斷開,非正常情況更會有RST報文標記。

總之網絡數據報文內容奇多無比,涉及到的知識和工具使用技巧都很多,在運維過程中,還是對運維過程有很大的幫助的。

使用wireshark分析tcp報文


分享到:


相關文章: