程式中可以使用以下sync報頭結構體
//author: arvik
//email: [email protected]
typedef
struct wx_sync_hr
__attribute__((packed, aligned(2))) wx_sync_hr_t;
先看看抓包資料:
請求包:
返回包,這裡就只截圖做個對比:
按照圖中標出的順序,解釋如下:
1. 1位元組 標識,一般為0xab,目前未見過其他值
2. 2位元組 標識,一般為0x00
3. 2位元組 報文長度,如果低於或等於tcp分段長度的話,這個值是和tcp報文資料部分長度是相等的(注意:第2、3部分有可能都表示報文長度,即:用4位元組表示報文長度)
4. 2位元組 標識, 未知
5. 16位元組 標識,一般都為0x00
6. 2位元組 標識, 資料長度, = 總長度 - 頭部長度(25位元組)
程式中可以使用以下報頭結構體:
typedef
struct wx_unknown_hr
__attribute__((packed)) wx_unknown_hr;
ssl協議中往往包含的是http協議,所以整體就是https協議,可以通過ssl協議傳輸公鑰中的網域名稱來確定,不過用程式分析起來就比較麻煩了,一般做協議分析只分析到ssl協議包報頭位置,並不深入確定某幀資料報ssl協議屬於誰
抓個包看看:
另外,arvik還寫了幾篇關於深度報文分析的文章,裡面講解了基於開源框架opendpi的ndpi的原始碼框架以及協議分析器的編寫,有興趣的鞋童可以前去**我的《智慧型路由器》專欄一**竟!
時間倉促,錯誤難免,如果發現部落格有誤,歡迎指正!
乙太網資料報格式
1.802.3報文結構 2.802.1q資料報結構 type 長度為2位元組,取值為0x8100,表示此幀的型別為802.1q tag幀。pri 長度為3位元,可取0 7之間的值,表示幀的優先順序,值越大優先順序越高。該優先順序主要為qos差分服務提供參考依據 cos vlan identifier...
乙太網資料報如何傳送
在乙太網中資料報是如何傳送的?ip和mac有什麼關係呢?下面所講的資料傳送只設計網路層和資料鏈路層。在linux下。在區域網內,一台主機h1 192.168.1.110 想傳送資料給主機h2 192.168.1.111 時。資料是怎樣過去的呢?首先h1會檢視自己的route table 命令rout...
四種乙太網資料報詳解
1.1 ethernet ii協議簡介 乙太網是當今現有區域網採用的最通用的通訊協議標準。該標準定義了在區域網中採用的電纜型別和訊號處理方法。ethernetii由dec,intel和xerox在1982年公布其標準,etherent ii主要更改了etherneti的電氣特性和物理介面,在幀格式上...