<返回更多

ICMP协议及应用

2020-10-19    
加入收藏
ICMP协议及应用(TCP/IP协议)

 

ICMP协议原理

IP协议提供尽力而为的服务,它定义如何将数据从源端传输到目的端,在这过程中,不负责对网络层数据传输的差错提供检测和报告,为了保证网络信息的正常交互,就诞生了ICMP,由它来承担网络层数据传输的差错提供检测和报告的作用!

ICMP:Internet Control Message Protocol(互联网控制消息协议!)

功能:(故障诊断和错误报告)

  1. 确认IP包是否成功到达目标地址

ping工具(使用ICMP协议)

  1. 通知在发送过程中IP包被丢弃的原因

比如当一个数据包到达路由器时,如果发现数据包的IP头部的TTL字段已经过期,它就会丢弃这个数据包,然后封装一个ICMP TTL过期消息发送给数据包的发送端,告知它数据丢弃的原因是TTL已经过期!

 

ICMP报文格式

 

ICMP协议及应用(TCP/IP协议)

 

类型:占用1字节,标识ICMP报文的类型,从类型值来看ICMP报文可以分为两大类。第一类是取值为1~127的差错报文,第2类是取值128以上的信息报文!

代码(编码):占用1字节,标识对应ICMP报文的代码!

注意:类型和代码界定了这个ICMP消息的类型!

常见ICMP消息对应的类型和编码:

ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 

校验和:

从数据包计算出来的值来检查其完整性。

通过完整性,我们可以检查收到的数据是否没有错误。

ICMP协议及应用(TCP/IP协议)

 

ICMP应用

ping

ping是检测网络连通性的常用工具,同时也能够收集其他相关信息。

用户可以在ping命令中指定不同参数,如ICMP报文长度、发送的ICMP报文个数、等待回复响应的超时时间等,设备根据配置的参数来构造并发送ICMP报文,进行ping测试。

常用参数:

ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 

ping命令的输出信息中包括目的地址、ICMP报文长度、序号、TTL值、以及往返时间!

 

tracert

显示数据包在网络传输过程中经过的每一跳!

(tracert基于报文头中的TTL值来逐跳跟踪报文的转发路径)

ICMP协议及应用(TCP/IP协议)

 

tracert是检测网络丢包及时延的有效手段,同时可以帮助管理员发现网络中的路由环路!

常用参数:

ICMP协议及应用(TCP/IP协议)

 

追踪过程:

ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 

补充:

ICMP协议及应用(TCP/IP协议)

 

ICMP差错报文:

ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 

ICMP控制报文:

ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 

ICMP路由和重定向报文:

ICMP协议及应用(TCP/IP协议)

 

ICMP请求与应答报文:

ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 


ICMP协议及应用(TCP/IP协议)

 

ICMP协议的安全性

协议的特点,决定了它非常容易被用于攻击主机和路由器!

  1. ping of death(死亡之ping)

 

ICMP协议及应用(TCP/IP协议)

 

应对措施:

ICMP协议及应用(TCP/IP协议)

 

  1. 洪水攻击

 

ICMP协议及应用(TCP/IP协议)

 

应对措施:

ICMP协议及应用(TCP/IP协议)

 

注意:为了不占用篇幅,以上攻击实验,会在<<Wireshark详解>>系列中复现!

 


 

ping使用的两个ICMP消息:

ICMP Echo-Request请求消息(类型:8):检测目的的可达性

ICMP Echo-Reply回复消息(类型:0):目的收到ICMP Echo-Request请求消息后,根据IP报文中的源IP地址,向其发送ICMP Echo-Reply回复消息!

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>