网际控制报文协议ICMP(Internet Control Message Protocol)(详解)

一、回顾下TCP/IP协议栈

在这里插入图片描述

二、ICMP(Internet Control Message Protocol)协议概述

在这里插入图片描述
在这里插入图片描述

三、ICMP协议的组成

在这里插入图片描述

四、ICMP差错报告报文(5种):

  1. 终点不可达:当路由器或主机不能交付数据报时就向源点发送终点不可达报文。(无法交付)
  2. 原点抑制:当路由器或主机由于拥塞而丢弃数据报时,就向源点发送源点抑制报文,使源点知道应当把数据报的发送速率放慢。(拥塞丢数据)(现在已不再使用)
  3. 时间超过:当路由器收到生存时间TTL=0的数据报时,除丢弃该数据报外,还要向源点发送时间超过报文。当终点在预先规定的时间内不能收到一个数据报的全部数据报片时,就把已收到的数据报片都丢弃,并向源点发送时间超过报文。(TTL=0)
  4. 参数问题:当路由器或目的主机收到的数据报的首部中有的字段的值不正确时,就丢弃该数据报,并向源点发送参数问题报文。(首部字段有问题)
  5. 改变路由(重定向):路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另外的路由器(可通过更好的路由)。(值得拥有更好的路由)
4.1 ICMP差错报告报文的数据字段:

ICMP不是高层协议,而是网际层(或称IP层)的协议。
ICMP报文被封装在IP数据报中发送
在这里插入图片描述

4.2 不应发送ICMP差错报文的情况:
  1. 对ICMP差错报告报文不再发送ICMP差错报告报文。
  2. 对第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文。
  3. 对具有组播地址的数据报都不发送ICMP差错报告报文。
  4. 对具有特殊地址(如127.0.0.0或0.0.0.0)的数据报不发送ICMP差错报告报文。

五、ICMP询问报文:

  1. 回送请求和回答报文:主机或路由器向特定目的主机发出的询问,收到此报文的主机必须给源主机或路由器发送ICMP回送回答报文。测试目的站是否可达以及了解其相关状态。
  2. 时间戳请求和回答报文:请某个主机或路由器回答当前的日期和时间。用来进行时钟同步和测量时间。
  3. 掩码地址请求和回答报文(现在已经不再使用)
  4. 路由器询问和通告报文(现在已经不再使用)

六、ICMP的应用

  1. PING:测试两个主机之间的连通性,使用了ICMP回送请求和回答报文
  2. Traceroute:跟踪一个分组从源点到终点的路径,使用了ICMP时间超过差错报告报文ICMP回送请求和回答报文
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值