您好,登錄后才能下訂單哦!
學習數據包分析時遇到如題所述的困惑,GOOGLE&白度無果。看了RFC791對fragment offset字段的描述后經思考計算才明白。希望對有同樣困惑的童鞋有所幫助。下面從截圖開始說明:
如圖,灰底的Fragment offset:1480那行對應的十六進制碼是藍底的0X20b9,剛開始很疑惑為何十進制的1480對應的是0x20b6,怎么算都不對啊,不知道讀者您是不是遇到了這樣的疑惑!
參考RFC791中相關字段的說明,才明白原來這個1480指的是偏移的實際字節而不是fragment offset字段中比特位對應的十進制數值。該字段的是以8個“八比特組”為單位的,所以1480在該字段的值是除以8之后的185,換算成二進制就是0 0000 1011 1001,因為前面還有個值為001的3比特的Flag字段,所以加上Flag字段后其二進制值是0010 0000 1011 1001,換算成二進制就是20b9。請自己算算吧。弄不明白的需要先掌握數據包結構及進制等基礎了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。