Wireshark抓包分析TCP創建/釋放連接的過程以及狀態變遷分析

Wireshark抓包分析TCP創建/釋放連接的過程以及狀態變遷分析

1、介紹計算機網絡體系結構

1.計算機的網絡體系結構

在抓包分析TCP創建連接以前首先了解下計算機的網絡通訊的模型,我相信學習過計算機網絡的都比較熟悉,以下圖所示是一個OSI七層模型、TCP/IP四層模型以及五層模型的對比圖。(此圖來源於計算機網絡第七版-謝希仁版本書)。服務器

其中OSI模型以及TCP/IP的模型大夥都應該熟悉,至於說五層模型,就是講網絡接口層分紅 數據鏈路層、和物理層,關於這個問題,謝老這麼解釋的網絡

2.計算機網絡模型每層所包含的信息內容

內容介紹

    • 物理層 
      • 經過線路傳送原始的比特流
      • 只完成一個節點到另外一個節點的傳送
    • 數據鏈路層 
      • 經過物理網絡傳送包(這裏的包指的是數據報)
      • 只完成一個節點到另外一個節點的傳送
      • 實現點到點的可靠傳輸
    • 網絡層 
      • 把包裏面的目的地址拿出來,進行路由選擇,決定要往哪一個方向傳輸
      • 負責從源經過路由選擇到目的地的過程,達到從源主機傳輸數據到目標主機的目的
    • 傳輸層 
      • 網絡層只是把數據送到主機,但不會送到進程,傳輸層負責進程與主機間的傳輸,主機到主機的傳輸交由網絡層負責
      • 傳輸層實現端到端的可靠傳送
    • 會話層 
      • 經過數據流創建會話關係
    • 展現層 
      • 數據壓縮、解壓、加密、解密、數據類型、格式變換等一切與數據展現有關的操做
    • 應用層 
      • 專門針對某些應用提供服務

針對以上內容展示一個圖例

此圖來源於https://www.jianshu.com/p/c793a279f698 不定很是準確,參考tcp

2、使用抓包工具分析TCP連接過程

1.安裝Wireshark(本身百度下載安裝)

我使用版本Version 1.4.9 ,工具備好多好比Sniffer等等,這個工具本身解決工具

2.開啓wireshark

雙擊打開本軟件--點擊接口列表或者單擊這個圖標  ,彈出網卡監聽的界面對話框,能夠選擇對應的網卡監聽、鼠標點擊ip地址能夠從IPV4與IPV6相互切換,點擊開始便可。學習

點擊開始便可監聽該網卡所流通過的數據測試

我使用倆臺機器來測試抓取報文 以下圖所示,服務開啓端口爲4455,客戶端隨機開啓一個  我測試過程當中的爲40183加密

 

能夠看到頭部的Filter 過濾規則、若是爲空白,則會將流經本網卡的全部數據均監聽採集上來,爲了方便抓取咱們所須要的數據包,咱們須要過濾掉無關的消息計算機網絡

3.輸入過濾規則進行過濾

過濾規則3d

  • tcp->只顯示TCP協議的記錄;
  • http->只看HTTP協議的記錄;
  • ip.src ==192.168.0.110 ->顯示源地址爲192.168.0.110的記錄;
  • ip.dst==192.168.0.1120 ->目標地址爲192.168.0.120的記錄;
  • ip.addr == 42.121.252.58 ->只顯示與某主機的通訊;
  • tcp.port ==80->端口爲80的;
  • tcp.srcport == 80 ->只顯示TCP協議的源端口爲80的;
  • http.request.method=="GET"  ->只顯示HTTP GET方法的;
  • eth.type == 0x806->只顯示ARP報文,這個字段的值表示是ARP報文,若是是ip報文此值爲0x8000
  • 注:Type後面的值記不住的話,能夠在Expression中選擇,

例如:ip.src == 192.168.0.109 or ip.dst == 192.168.0.109 and tcp  表示ip地址來源是192.168.0.120 或者ip地址目的爲192.168.0.120而且通訊協議是tcpblog

我輸入的是:tcp.srcport == 4455 or tcp.dstport == 4455 表示只查看目的端口和來源端口爲4455的信息

過濾報文以下

 過濾規則也有說明打擊表達式能夠查看別的規則語法

查看具體抓到的數據包對應的協議層

4.TCP的連接創建

TCP的三次握手

包數據

TCP的三次握手創建連接圖(此圖依然來源於計算機網絡-謝希仁)

由上圖能夠看出TCP的連接三次握手信號的過程 A爲客戶端,B爲服務器

創建過程的描述請看謝老的講述、以及報文抓取截圖中的信號

 

5.數據的發送

6.TCP的連接釋放

TCP連接釋放報文交互信息

TCP連接釋放的過程,也就是一般說的四次揮手

7.TCP的有限狀態機

爲了可以更加清晰的看清楚TCP連接過程的狀態變化狀況,以及狀態之間的關係下圖介紹了TCP的有限狀態機

6.TCP創建連接和斷開所用到的工具

開啓客戶端和服務端程序而且啓動服務的監聽

開啓服務端

 

開啓客戶端

TCP測試工具下載地址 

相關文章
相關標籤/搜索