Wireshark實戰分析值ICMP協議

(1)什麼是ICMP協議?

      ICMP(Internet Control  Message Protocol)網際報文控制協議,是Internet協議族的核心協議之一,它主要用在網絡計算機的操作系統中發送出錯信息。例如:請求服務不可用,主機不可達。ICMP協議是一種面向無連接的協議,用於傳輸出錯報告控制信息。但是ICMP不是高層協議,而是IP層協議。

(2)學習ICMP的重要性?

      ICMP協議因爲其ping功能而著名,ping是用來檢測一個設備主機的可連續性,我想大部分都可能用過ping命令的。但是ICMP協議本身的特點決定了它非常容易被用於攻擊網絡上的路由器或者主機。例如,用戶可以利用操作系統規定的ICMP數據包最大尺寸不超過64K這一規定,向主機發起ping OF Death(死亡之ping)攻擊。這時候主機就會出現內存分配失敗,導致主機崩潰,死機。此外,向主機長時間發送ICMP數據包,也會最終導致系統癱瘓,大量的ICMP數據包也會形成“ICMP風暴”,使得目標主機耗費大量的CPU資源處理。

(3)ICMP首部格式

       

       可以清晰的看到ICMP報文作爲IP層數據報的數據,加上IP數據包的首部,組成IP數據報發送出去。上圖是ICMP報文的格式

      類型(Type): ICMP信息基於RFC規範的類型分類

      代碼(Code): ICMP信息基於RFC規範的子類型

     檢驗和(CheckSum):用來保證ICMP數據的頭部和數據部分的完整

     數據部分:依賴於類型和代碼域的部分

(4)ICMP的請求報文類型

     

    (5)ICMP響應報文類型

       

     (6)ICMP協議提供的診斷報文類型

       


(1)捕獲ICMP請求包和響應包,利用ping命令,ping目標主機

        

(2)分析ICMP請求包-------Echo(ping)請求包,分析53

     

 (3)分析ICMP響應包---------Echo(ping)reply,也就是對應的54幀

    

 (4)捕獲ICMP數據包------請求超時數據包

從以上可以看出,從info信息中看到,Time-to-live表示此幀是請求超時數據包

(5)分析請求超時包,分析6201幀

    說到ICMP的請求報文超時,就的先說說ICMP差錯報告報文的數據字段格式。如下圖

    

     ICMP差錯報文的格式是:把收到的IP數據報的首部和數據字段的前8個字節提取出來(也就是ICMP報文的格式)。作爲ICMP報文的數據字段。在加上ICMP差錯報文的前8個字節,就構成了ICMP差錯報告報文。

     

(5)捕獲ICMP目標主機不可達的數據包

   

(6)分析ICMP目標主機不可達數據包,分析6514,也就是info信息爲: Destination Unreachable


  

       

    


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章