Internet控制消息協議(ICMP)是用于計算機網絡中錯誤報告和診斷目的的實用程序。ICMP是Internet協議(IP)套件的一部分,由具有不同用途的預定義消息組成。Internet控制消息協議的大多數方面都不會被最終用戶注意到,但是一些網...
Internet控制消息協議(ICMP)是用于計算機網絡中錯誤報告和診斷目的的實用程序。ICMP是Internet協議(IP)套件的一部分,由具有不同用途的預定義消息組成。Internet控制消息協議的大多數方面都不會被最終用戶注意到,但是一些網絡工具,如traceroute和ping都依賴ICMP消息來實現它們的功能。Internet控制消息協議(ICMP)是一種用于計算機網絡中錯誤報告和診斷的實用程序。在Internet和小型計算機網絡的核心是一組稱為IP套件的協議這些協議規定了網絡設備之間交換消息的格式,并建立了如何發送和接收這些消息的規則。這些協議也是分層的,每一層都依賴于它下面的一層。ICMP是第二層Internet層的一部分。這一層包括眾所周知的Internet負責在一個或多個網絡上傳輸單個數據組(稱為數據包)的協議。ICMP用于在設備或主機之間發送錯誤消息或診斷信息,使用Internet協議。ICMP消息是預定義的,可以通過名稱或類型號引用。這些消息大多數用于不同類型的錯誤報告。例如,當無法訪問特定主機時,通常會生成一個ICMP消息,指出阻止數據傳遞的特定問題。其他類型的如果數據包損壞或網絡中的路由器或主機擁塞,則發送消息。數據包的最大大小不是預先定義的,而是由特定網絡鏈路的最大傳輸單元(MTU)決定的。不同的鏈路可以有不同的MTU,但是一個包必須小于給定路徑上最小的MTU才能完成它的旅程一種稱為路徑MTU發現(PMTUD)的技術使用ICMP消息在數據包對特定路徑段太大時通知發送方。稱為ICMP路由器發現協議(IRDP)的相關協議可以幫助支持它的主機自動配置網絡。IRDP使用兩種類型的Internet控制消息協議通知和發現附近路由器的消息,即連接兩個或多個網絡的主機。支持IRDP的路由器將定期向主機廣播一個ICMP路由器廣告消息,宣布其存在。主機也可以發送請求消息,請求所有附近的路由器標識自己。一些流行的網絡實用程序還依賴于Internet控制消息協議。traceroute工具利用當數據包過期或超過其“生存時間”(TTL)時生成的ICMP消息。通過故意為數據包設置較低的TTL值,traceroute將從數據包到達的最后一個路由器接收到ICMP超時消息過期。理論上,重復此過程并增加TTL值將生成正在通過的所有主機數據包的列表。另一個名為ping的工具依賴于ICMP回顯請求消息,該消息以ICMP回顯回復消息響應。不幸的是,在所謂的“藍精靈攻擊”(smurf attack)中,當黑客用偽造的發送方信息發送回顯請求,然后由許多其他機器響應時,ping也會被濫用。這會使網絡擁塞到無法通過合法數據包的地步,這種情況稱為拒絕服務
-
發表于 2020-08-06 11:56
- 閱讀 ( 789 )
- 分類:電腦網絡