ping包功能--ARP和ICMP报文

ping包功能主要涉及两种报文:ICMP和ARP报文。

在以太网通信体系中,只知道网络节点的IP地址,不知道以太网中的MAC地址,无法形成数据帧的封装,所以必须知道网络节点的MAC地址才可以正常封装报文完成网络传输。此时便可以通过ARP地址解析协议进行MAC查询。

1.以太网ARP数据包格式

其中每个字段的含义如下:

前导码:7个字节0x55。

SFD: 1个字节0xd5 ( 前导码和SDF不参与CRC计算)。

DMAC:以太头中的目的mac地址,8个字节。

SMAC:以太头中的源mac地址,8个字节。

长度/类型:以太头中协议类型,2个字节,对于APR请求和应答报文,值为0x0806。

硬件类型: 指明了发送方想知道的硬件接口类型,以太网的值为 1。

协议类型: 表示要映射的协议地址类型。它的值为 0x0800

硬件地址长度和协议长度:分别指出硬件地址和协议的长度,以字节为单位。对于以太网上 IP 地址的ARP请求或应答来说,它们的值分别为 6 和 4。

OP:操作类型, 这个报文的类型,ARP 请求为 1ARP 响应为 2RARP 请求为 3RARP 响应为 4

目的MAC:全0表示为广播报文。

2. 以太网ICMP报文格式

ICMP协议作为网络层的一部分,主要用于错误报告和网络诊断。它能告知IP包是否成功到达目标,以及丢包原因。常见的ICMP报文包括差错报文(如目的站不可达、数据报超时)和查询报文(如回送请求/回答)。回送请求和回答报文常用于测试两台主机间IP通信的可行性。

以太网ICMP互联网控制报文协议(Internet Control Message Protocol, ICMP)包格式如下:

其中20字节的IP头格式见下图:

对于ICMP包类型和代码字段的值决定了ICMP报文类型,对于ping包功能,主要是对ping请求和ping应答进行处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值