溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

wireshark如何解析ceph網(wǎng)絡(luò)通信

發(fā)布時(shí)間:2021-12-17 09:32:51 來(lái)源:億速云 閱讀:165 作者:小新 欄目:云計(jì)算

小編給大家分享一下wireshark如何解析ceph網(wǎng)絡(luò)通信,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

一、安裝wireshark

wireshark從2.0版開(kāi)始支持ceph協(xié)議解析

下載地址:https://www.wireshark.org/download/

二、ceph網(wǎng)絡(luò)抓包

使用tcpdump在ceph集群上抓包,e.g.:tcpdump -i ens33 -s 0 -w 3ceph.pcap host 172.16.134.95 and host 172.16.134.96 ,

ens33是網(wǎng)絡(luò)接口名字,3ceph.pcap是保存的抓包的文件名字,host 172.16.134.95 and host 172.16.134.96是在這兩個(gè)節(jié)點(diǎn)之間流動(dòng)的數(shù)據(jù)包

注意:tcpdump抓包要從ceph集群會(huì)話開(kāi)始抓,否則在會(huì)話中間抓包,wireshark不識(shí)別。

三、wireshark架構(gòu)

1、GUI處理在頁(yè)面上所有用戶的顯示包塊對(duì)話框,源碼在ui/qt下面

2、core主要的“膠水”模塊,把別的模塊整合到一起,源碼在根目錄下

3、Epan包分析引擎,用協(xié)議書(shū)的形式分析包。源碼在epan目錄下

4、Wiretap用于讀、寫(xiě)捕獲的文件,源碼在wiretap目錄下

5、Capture捕獲網(wǎng)絡(luò)數(shù)據(jù)的接口模塊,源碼在capture下

參考:https://www.wireshark.org/docs/wsdg_html_chunked/ChWorksOverview.html

四、wireshark 解析包流程

當(dāng)Wireshark從文件加載數(shù)據(jù)包時(shí),每個(gè)數(shù)據(jù)包都會(huì)被解析。 Wireshark嘗試檢測(cè)數(shù)據(jù)包類型,并從數(shù)據(jù)包中獲取盡可能多的信息。在此運(yùn)行中,只需要包列表窗格中顯示的信息。

當(dāng)用戶在數(shù)據(jù)包列表窗格中選擇特定數(shù)據(jù)包時(shí),將再次解析該數(shù)據(jù)包。 這一次,Wireshark嘗試獲取每一條信息并將其放入數(shù)據(jù)包詳細(xì)信息窗格中。

每個(gè)解剖器解碼其協(xié)議的一部分,然后將解碼交給后續(xù)解剖器以獲得封裝協(xié)議。

參考:https://www.wireshark.org/docs/wsdg_html_chunked/ChapterDissection.html

五、wireshark dissector源碼分析

wireshark根目錄下epan/dissectors/packet-ceph.c是分析ceph網(wǎng)絡(luò)協(xié)議的源碼

wireshark如何解析ceph網(wǎng)絡(luò)通信

10514行,注冊(cè)解析器函數(shù),

10516行,創(chuàng)建ceph_handle,如果有相應(yīng)的包調(diào)用dissec_ceph_old函數(shù)解析.

10518行,在啟發(fā)式解析器中加添dissect_ceph_heur,dissect_ceph_heur判斷是不是ceph的網(wǎng)絡(luò)包。wireshark分為普通字符串表,整數(shù)表和啟發(fā)式解析表,

啟發(fā)式解析器的特點(diǎn)是:一旦特定“連接”的數(shù)據(jù)包被識(shí)別為屬于對(duì)于特定的協(xié)議,Wireshark應(yīng)該始終直接調(diào)用該解析器解析此協(xié)議。

wireshark如何解析ceph網(wǎng)絡(luò)通信

7091行,判斷是不是ceph網(wǎng)絡(luò)協(xié)議,其中C_BANNER定義在830行,C_BANNER_SIZE_MIN定義在833行

wireshark如何解析ceph網(wǎng)絡(luò)通信

wireshark如何解析ceph網(wǎng)絡(luò)通信

可見(jiàn)wireshark根據(jù)網(wǎng)絡(luò)包中的ceph v標(biāo)志,判斷是否為ceph網(wǎng)絡(luò)協(xié)議。

7099行,如果判斷是ceph協(xié)議,調(diào)用ceph_handle處理。在10516行中創(chuàng)建了ceph_handle。

wireshark如何解析ceph網(wǎng)絡(luò)通信

7081行,調(diào)用dissect_ceph函數(shù),解析網(wǎng)絡(luò)包

wireshark如何解析ceph網(wǎng)絡(luò)通信

07019行,在網(wǎng)絡(luò)包列表protocol字段中,設(shè)置Ceph字段

wireshark如何解析ceph網(wǎng)絡(luò)通信

當(dāng)在一個(gè)網(wǎng)絡(luò)包列表中點(diǎn)擊一個(gè)網(wǎng)絡(luò)包時(shí),下方的網(wǎng)絡(luò)包詳細(xì)信息中,以樹(shù)形詳細(xì)列出網(wǎng)絡(luò)包的詳細(xì)信息。

用proto_item_add_subtree注冊(cè)下層的協(xié)議

c_dissect_xxx解析子樹(shù)。

以上是“wireshark如何解析ceph網(wǎng)絡(luò)通信”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI