ARP报文分析

本文将对ARP报文加以分析,让大家对ARP报文有个初步的了解。

1arp报文格式


2arp request报文


3arp response报文



由图2、图3可以看出,ARP报文是封装在以太网帧里面的,下面我们就来分析一下具体内容。
先说ARP报文的格式:
硬件类型:指明硬件的类型,以太网是1
协议类型:指明发送者映射到数据链路标识的网络层协议的类型;IP对应0x0800
硬件地址长度:也就是MAC地址的长度,单位是字节,这里是6
协议地址长度:网络层地址的长度,即IP地址长度,单位是字节,这里为4
操作:指明是ARP请求(1)还是ARP应答(2),这个可以在图2和图3中相应位置看出。
剩下的字段都很简单啦,不具体说了。

接下来我们来具体分析一下图2和图3的内容,在数据链路层,或者说在一个局域网内两台主机的互相通信是通过硬件地址(MAC地址)来完成的,在主机A(在图2中对应IP192.168.1.122的主机)刚开启时,它的ARP缓存是空的,如果主机A想和局域网中的主机B(对应IP192.168.1.1)通信,它要知道主机BMAC地址才可以,这里主机A已经知道主机BIP地址了,那么怎么才能知道主机BMAC地址呢,这也就是arp协议要完成的内容。
arp
的作用是:从ip地址到mac地址的一个转换,大家看图2,主机A向同一个局域网内的所有主机(即广播)发送arp请求报文:我的IP192.168.1.122,我的mac地址是00-E0-B0-E3-1C-B5,请问IP地址为192.168.1.1MAC地址是什么?
局域网中所有主机都会都到这个arp请求报文,但ip地址是非192.168.1.1的主机发现这份报文不是发给自己的,于是就丢弃掉这份报文,而主机192.168.1.1检测到这份arp请求报文是发给它的,所以它就发送回一个arp应答报文,具体内容见图3
要注意的是,arp应答报文不是广播,是单播回给192.168.1.122的,主机192.168.1.122收到这份arp应答报文后,双方就可以通信了。
当然,这里省略了很多细节方面,大家可以查阅下相关的资料。

在这里我说下arp欺骗的内容,相信大家会很感兴趣,其实说穿了,arp欺骗很简单:
arp
欺骗分为主机欺骗和网关欺骗,一般来说,我们的网络环境都是N台主机通过网关的NAT功能出去连接Internet的。也就是说所有的数据包都要流经网关。
现在假设有网关、主机A和主机B,主机A是欺骗者,而主机B当然就是被欺骗者了。

先说主机欺骗,主机A通过某种手段向主机B发送ARP报文:小样儿的你听好了,网关的MAC地址是xx-xx-xx-xx-xx-xx,而这个地址是主机A随便写的一个mac地址,主机B听到了这个消息后,以后所有的报文都忘这个虚假的地址发送,因为这个地址本身就是不存在的,所以主机B理所当然得也就找不到网关了,现象就是掉线啦!

再说网关欺骗,过程和上面的也差不多,不过主机A是把报文扔给网关了,内容就是:老大啊,主机Bmac地址是yy-yy-yy-yy-yy-yy,这个地址当然也是不存在的啦,那网关听信了主机A的虚假内容,于是从Internet发来给主机B的所有数据包,网关都发往这个虚假的yy-yy-yy-yy-yy-yy,而主机B还在那边张着嘴等着网关送给它的报文呢,不过网关可不管这个,一直把主机A告诉给它的虚假地址当作是主机B的地址,于是乎,可怜的主机B又断线了!

该内容属于**题目型**,涉及通过Wireshark捕获并分析ARP请求与应答报文的实验任务。 --- ### **题目重述** 1. 执行 `ping 相邻主机IP地址` 命令触发ARP通信; 2. 停止Wireshark抓包; 3. 从Packet List中找出一个ARP请求和一个ARP应答报文; 4. 根据抓包结果填写表4-2中的字段信息。 --- ### **详解** #### **操作流程说明** - 在执行完 `arp -d` 和 `arp -a` 清空缓存后,ARP表为空。 - 当输入命令: ``` ping 210.138.1.2 ``` (假设相邻主机IP为 `210.138.1.2`) - 系统发现无对应MAC地址,会先发送**ARP请求广播**来获取目标IP的MAC地址。 - 目标主机收到后回复**ARP应答单播**(或广播,视实现而定)。 - Wireshark可捕获这两个ARP报文,用于分析其结构。 --- #### **表4-2 ARP报文分析(示例填写)** | **ARP 请求报文** | | **ARP 应答报文** | | |-------------------------------------|----------------------------------|-----------------------------------|-----------------------------------| | **字段** | **报文信息及参数** | **字段** | **报文信息及参数** | | 硬件类型 | 1(以太网) | 硬件类型 | 1(以太网) | | 协议类型 | 0x0800(IPv4) | 协议类型 | 0x0800(IPv4) | | 硬件地址长度 | 6 字节 | 硬件地址长度 | 6 字节 | | 协议地址长度 | 4 字节 | 协议地址长度 | 4 字节 | | 操作类型 | 1(请求) | 操作类型 | 2(应答) | | 源站物理地址 | aa:bb:cc:dd:ee:ff(本机MAC) | 源站物理地址 | 00:11:22:33:44:55(目标MAC) | | 源站IP 地址 | 210.138.1.1(本机IP) | 源站IP 地址 | 210.138.1.2(目标IP) | | 目的站物理地址 | 00:00:00:00:00:00(未知) | 目的站物理地址 | aa:bb:cc:dd:ee:ff(本机MAC) | | 目的站IP 地址 | 210.138.1.2(目标IP) | 目的站IP 地址 | 210.138.1.1(本机IP) | > ✅ 注:以上数据为典型示例,实际值需根据真实抓包结果填写。例如,在Wireshark中查看“Address Resolution Protocol”详情即可提取各字段。 --- #### **字段解释** - **硬件类型**:1 表示以太网(Ethernet); - **协议类型**:0x0800 表示IPv4协议; - **硬件地址长度**:MAC地址固定为6字节; - **协议地址长度**:IPv4地址固定为4字节; - **操作类型**:1=请求,2=应答; - **源站物理地址/IP地址**:发送方的MAC和IP; - **目的站物理地址/IP地址**: - 请求时:目的MAC全0(未知),目的IP为目标主机; - 应答时:目的MAC和IP均填写为请求方的信息。 --- ### **知识点** 1. **ARP请求与应答机制** ARP请求通过广播发送,询问目标IP对应的MAC;应答以单播或广播回复,提供自己的MAC地址。 2. **ARP报文格式关键字段** 包含硬件/协议类型、地址长度、操作码、源/目的MAC与IP,构成完整的链路层地址解析信息。 3. **Wireshark中ARP过滤方法** 使用显示过滤器 `arp` 可快速筛选所有ARP报文;点击数据包可查看各层字段详细内容。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值