-
終點不可達:終點不可達分為:網絡不可達,主機不可達,協議不可達,端口不可達,需要分片但DF比特已置為1,以及源路由失敗等六種情況,其代碼字段分別置為0至5。當出現以上六種情況時就向源站發送終點不可達報文。
-
端口不可達:UDP的規則之一是:如果收到UDP數據報而且目的端口與某個正在使用的進程不相符,那么UDP返回一個ICMP不可達報文。
-
源站抑制:當路由器或主機由於擁塞而丟棄數據報時,就向源站發送源站抑制報文,使源站知道應當將數據報的發送速率放慢。
-
時間超過:當路由器收到生存時間為零的數據報時,除丟棄該數據報外,還要向源站發送時間超過報文。當目的站在預先規定的時間內不能收到一個數據報的全部數據報片時,就將已收到的數據報片都丟棄,並向源站發送時間超過報文。
-
參數問題:當路由器或目的主機收到的數據報的首部中的字段的值不正確時,就丟棄該數據報,並向源站發送參數問題報文。
-
改變路由(重定向)路由器將改變路由報文發送給主機,讓主機知道下次應將數據報發送給另外的路由器。
以下幾種情況都不會導致產生ICMP差錯報文
- ICMP差錯報文(但是,ICMP查詢報文可能會產生ICMP差錯報文)
- 目的地址是廣播地址或多播地址的IP數據報
- 作為鏈路層廣播的數據報
- 不是IP分片的第一片
- 源地址不是單個主機的數據報。即源地址不能為零地址、環回地址、廣播地址或多播地址。