ICMP协议分析

ICMP协议原理

  1. ICMP(Internet Control Message Protocol,互联网控制信息协议),用于实现IP网络层及上层协议的连通性测试和差错报告。
  2. 源发送者或者上层程序根据返回的ICMP错误信息,执行下一步的动作。
  3. 常用的Ping程序和Tracert程序便是基于ICMP协议进行开发的。
  4. 主要功能就是进行活跃主机探测。

ICMP协议实战

  1. 打开Wireshark,监听网卡;

  2. 使用Ping命令,对www.baidu.com进行ping,抓取ICMP包如下:

  3. 数据包解读

    • Type 类型值,标识ICMP分组类型
    • Code代码值,标识ICMP分组类型的某一种具体分组
    • Checksum校验和,用于检验数据包是否完整或是否被修改
    • ldentifier 标识符,标识本进程。当同时与多个目的通信时通过本字段来区分
    • Sequence Number 序列号,标识本地到目的的数据包序号一般从序号1开始
  4. type、code值

可尝试使用ping或者tracert(windows)/traceroute(kali)对百度地址进行扫描、追踪。