ICMP报文是一份查询报文也是一份差错报文。
主要类型包括:
地址掩码请求和应答
时间戳请求和应答
不可达端口差错报文
为了避免产生广播风暴,一下情况不产生差错报文
1.icmp差错报文
2.目的地址是广播地址
3.作为链路层广播的数据包
4.不是ip分片的第一片
5.源地址不是单个主机的数据包
icmp地址掩码请求与应答
icmp地址掩码请求用于无系统在引导过程中获取自己的掩码。发送一个封装好的icmp地址掩码请求会得到一个携带地址掩码的应答。
如果使用子网划分,就会出现一个错误。例如,一个b类地址,子网掩码为255,
当发送广播请求时,同时本机回环接口也会收到一份请求,并且返回回环接口的掩码,255.255.0.0。这时划分前的掩码,出现了错误。
icmp时间戳请求与应答
没神马特别,提供一种查询其他系统时间进行同步手段。精度到毫秒级。
icmp端口不可达差错
端口不可达是icmp目的不可达报文的一种。既然说到端口就涉及tcp udp等上层
协议。
例如,使用tftp客户端,尽管对方打开了tftp服务,但是客户端的端口指定错误,
就会返回一个端口不可到达。然而这不是马上返回的,因为icmp报文是在主机之间
交换的,不涉及到端口号。返回报文中会代码(0~15)会被填写,表明是报文不可
达的出错类型。端口不可到达为编号3.