前言
Internet控制报文协议ICMP(Internet Control Message Protocol)是网络层的一个重要协议。ICMP协议用来在网络设备间传递各种差错和控制信息,它对于收集各种网络信息、诊断和排除各种网络故障具有至关重要的作用。使用基于ICMP的应用时,需要对ICMP的工作原理非常熟悉。
IGMP(Internet Group Management Protocol)因特网组管理协议,是TCP/IP协议族中负责IP组播成员管理的协议,它用来在接收者和与其直接相邻的组播路由器之间建立、维护组播组成员关系。
ICMP错误报告
作用
1)、ICMP用来传递差错、控制、查询等信息
2)、当网络设备无法访问目标时,会自动发送ICMP目的不可达报文到发送端设备。
响应请求过程
1)、根据缓存表中的IP地址映射MAC地址发送ARP请求包
2)、对方主机没有答应,则再次发送ARP请求包
3)、经过多次没有Reply,将由末端路由设备发送一个ICMP Destination Unreachalbe 包发给发送端
ping
1)、可以测试网络间的连通性;
2)、会统计响应时间和TTL(IP包中的Time To Live,生存周期)
3)、ping命令是基于ICMP,不具备传输能力,是在网络层。
Tracert
1)、可以测试网络间的连通性;
2)、可以打印经过的路由IP地址与连通性;
ICMP报文
IP头报文 | ICMP头报文 | ICMP数据 | ||
Type | Code | Checksum |
代码 | 类型描述 | 代码 | 类型描述 |
0 | 网络不可达 | 7 | 信宿主机未知 |
1 | 主机不能达 | 8 | 信源主机被隔离 |
2 | 协议不可达 | 9 | 与信源网络的通信被禁止 |
3 | 端口不可达 | 10 | 与信源主机通信被禁止 |
4 | 需要段和DF设置 | 11 | 对请求的服务类型,网络不可达 |
5 | 源路由失败 | 12 | 对请求的服务类型,主机不可达 |
6 | 信宿网络未知 |
总结
了解ping命令与tracert命令的使用与内容介绍。
了解ICMP差错报文分别有端口不可达、源站抑制、超时、参数问题、改变路由。
了解ICMP报文type类型描述