网际控制报文协议ICMP
网络层功能:尽最大努力的为你转发数据分组
那么除了它自身所提供的功能外,还能不能想到其它方法,来加强其转发数据报的成功率。
所以就有了ICMP协议。
ICMP是什么时候有用呢?
就是在IP数据报传输过程中出了差错,出了异常的时候。可以让发送方知道是什么原因丢弃的,下一次就避开这种情况。
比如发送发发至一个网络,但是该网络不存在,于是ICMP就告诉发送方说网络不存在,叫它下次不要再发了。
ICMP是封装在IP数据报的数据部分。
ICMP报文的种类
- 差错报告报文
- 询问报文
ICMP差错报告报文共4种
- 终点不可达
- 时间超过
- 参数问题
- 改变路由(重定向)
- (告诉发送方去往目的地要走另一条路)
不发送ICMP差错报告报文的几种情况
ICMP询问报文
- 回送请求和回答报文
- 时间戳请求和回答报文
PING
PING(Packet InterNet Groper)
PING用来测试两个主机之间的连通性。
Traceroute
现在很多服务器都不再有ICMP请求,因为如果现在有大量主机向同一个服务器发送ICMP请求,那么服务器得同时回复这些,它必定会崩溃。也就是所谓的ddos。
**ICMP Flood攻击**
ICMP Flood攻击属于流量型的攻击方式,是利用大的流量给服务器带来较大的负载,
影响服务器的正常服务。
由于目前很多防火墙直接过滤ICMP报文。因此ICMP Flood出现的频度较低。