ICMP協議詳解

2021-10-09 19:26:49 字數 2042 閱讀 6611

全稱:internet 控制訊息協議(internet control message protocol)

是網路層的乙個重要協議。icmp協議用來在網路裝置間傳遞各種差錯和控制資訊,並對於收集各種網路資訊、診斷和排除各種網路故障等方面起著至關重要的作用

作用:通過傳遞icmp報文,進行差錯檢查錯誤報告以及控制功能

總結:三大功能+兩大應用

1.控制功能(重定向)

次優路徑

icmp的解決方法:主機在進行不同網段訪問時,資料會交給閘道器(路由器),當路由器從介面收到該資料報時,進行查詢路由表條目,發現資料報發出的介面和收到的介面一致時,會觸發重定向報文

回到上圖場景:閘道器路由器收到主機a要訪問伺服器a的資訊後,會將重定向報文傳送給主機a,主機a收到後,產生主機路由,主機後續訪問伺服器a直接通過重定向報文中的下一跳進行訪問,也就是直接將訪問資訊直接傳送給rta,不需要再通過閘道器路由器進行**,從而解決次優路徑

2.差錯檢測

通過查詢(request),和響應(reply)進行實現

3.錯誤報告

裝置無法訪問時,會自動會送相應的icmp報告報文,可用於排障

①:icmp是工作在網路層,協議號1

②:報文重要字段:type+code

​ type和code的不同組合可以表示不同功能的icmp報文

型別 (type)

編碼(code)描述0

0echo reply30

網路不可達31

主機不可達32

協議不可達33

埠不可達50

重定向8

0echo request

type為3的都是不可達資訊,

①ping:

使用request和reply

​ 使用功能:差錯檢測

​ 作用:測試網路連通性

​ 使用方法:

ping + 目的ip(網域名稱) + 選項(-a、-c 等等)
​ ping -c:指定報文傳送的數量,預設為5

​ ping -t:持續傳送報文

​ ping -h:指定ttl的值,預設值為255

​ ping -i:指定傳送icmp報文的介面

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-5372e6z5-1601099717174)(

②tracert:

用以跟蹤資料報經過的三層裝置

​ 使用功能:錯誤報告

​ 作用:用於跟蹤資料報的**路徑。一般用於排障。

​ 使用方法:

tracert + 選項(-a、-f、-m等等) + 目的ip位址
​ tracert -a 指定源ip

​ tracert -f 指定初次ttl的值

​ tracert -q 指定傳送單個報文的次數,預設為3

​ tracert -m 最大的ttl值,預設為30

ttl(time to live):用於路由防環路,封裝在ip報文頭部,預設為255,經過一台三層裝置ttl-1,當ttl=0時,報文會被丟棄

原理:通過udp報文和icmp的錯誤報告(ttl)結合。

​ 往後,ttl值逐步加1(預設最大加到30),傳送。然後返回icmp錯誤報告。

ICMP協議和ICMP協議

一 icmp協議 因為ip協議不提供可靠的傳輸服務,也不提供端到端或點到點的確認,如果出錯可以通過icmp報告來看,它是在ip模組中實現。tcp ip協議設計的icmp協議就是為了彌補ip協議的不足。它是tcp ip協議族的乙個子協議,用於在ip主機 路由器之間傳遞控制訊息。控制訊息指網路通不通 主...

5 TCP IP協議族詳解 ICMP協議

icmp通常被認為是ip層的一部分。它傳遞差錯報文以及其它需要注意的資訊。icmp報文在ip報文內部被傳輸,它們之間的關係如下圖 icmp報文的格式如下圖所示,前4個位元組都是一樣的,但是剩下的其他位元組互不相同。說明 型別字段可以有15個不同的值,以描述特定型別的icmp報文。某些icmp報文還使...

ICMP協議分析

icmp報文 icmp應用 icmp安全性 icmp的兩級封裝 更加詳細地看一下資料報的格式吧。用來傳送icmp 報文的ip 資料報上實際上有不少字段。但是實際上與icmp 協議相關的只有7 個子段。1 協議 2 源ip 位址 3 目的ip 位址 4 生存時間 這四個包含在ip 首部的字段。5 型別...