一、实验项目名称
利用 Wireshark 分析 ARP 协议
二、实验原理
(一)Wireshark 概述
Wireshark 作为一款广泛应用的网络包分析工具,具备强大的功能,能够深度捕获并详尽展示网络数据包的各项细节信息,在开源网络分析软件领域占据重要地位。其核心作用在于精准获取网络包,并以直观、全面的方式呈现包内所蕴含的丰富信息,为网络分析提供有力支持。
(二)地址解析机制
在局域网环境中,主机之间的通信依赖于 48bit 的以太网地址来确定目的接口。然而,设备驱动程序在处理 IP 数据报时,并不直接检查其中的目的 IP 地址。此时,地址解析机制发挥关键作用,它构建起 32bit 的 IP 地址与数据链路层所使用地址之间的映射桥梁,确保不同地址形式之间的有效转换,从而保障数据能够准确无误地在网络中传输。
(三)ARP 协议原理
ARP(Address Resolution Protocol)协议是实现 IP 地址到对应的硬件地址动态映射的重要协议。当主机需要发送信息时,会以广播形式向网络上的所有主机发送包含目标 IP 地址的 ARP 请求报文。网络中的其他主机接收到该请求后,目标主机将返回包含其物理地址的 ARP 应答报文。发送主机在收到应答消息后,会将目标 IP 地址及其对应的物理地址存入本机 ARP 缓存中,并在一定时间内保留该记录,以便后续通信时直接查询 ARP 缓存,从而有效节约网络资源。需要注意的是,地址解析协议建立在网络中各个主机相互信任的基础之上,这意味着网络上的主机可自主发送 ARP 应答消息,而其他主机在收到应答报文时,不会对其真实性进行检测便直接记入本机 ARP 缓存,这种机制在一定程度上可能带来安全风险,如 ARP 欺骗等问题。
三、实验目的
(一)深化理论理解
旨在通过实际操作实验,深入理解数据包的构成与传输机制,清晰把握网络信息在网络中的传输过程,全面且深入地理解网络协议的内涵、结构以及不同协议之间的差异,从而构建坚实的网络知识体系。
(二)掌握 ARP 协议特性
利用 Wireshark 工具捕获 ping 过程中产生的 ARP 报文,通过对捕获报文的深入分析,切实掌握 ARP 协议的工作原理,精准掌握 ARP 报文的格式规范,清晰辨别 ARP 请求报文和应答报文在结构、功能及字段含义等方面的区别,为网络故障排查、安全分析等实际应用奠定基础。
四、实验内容
利用 Wireshark 软件对 ARP 协议进行深度分析,具体包括捕获 ARP 报文、剖析报文结构、解读各字段含义以及研究 ARP 协议在网络通信中的交互过程。
五、实验器材(设备、元器件)
-
运行 Windows 操作系统且正确安装网卡的计算机,确保其具备稳定的网络连接能力,以支持实验过程中的数据捕获与分析操作。
-
Wireshark 软件,作为核心实验工具,用于捕获和解析网络数据包,凭借其强大功能实现对 ARP 协议的细致分析。
-
具备路由器、交换机等网络设备的网络环境,构建起完整的实验网络架构,模拟真实网络场景,确保 ARP 协议在不同网络设备间的交互过程得以真实呈现,为实验提供可靠的网络基础。
六、实验步骤
1、查看本机WLAN接口IP,得到192.168.1.112。
2、利用arp –a命令在本地的ARP 缓存中查看IP-MAC对应表。
3、找到与接口192.168.1.112,有过连接的IP,本实验选择192.168.1.109。
4、利用arp-d 192.168.1.109,删除相应缓存记录
5、打开wireshark网络分析器,选择捕获数据接口,WLAN接口,开始捕获。
6、输入命令,ping 192.168.1.109。
7、此时wireshark会捕获到相应分组数据,停止捕获。
七、实验数据及结果分析
- 请求报文:
由最上方报文信息可以看到,由于之前删除了IP-MAC对应表中IP:192.168.1.109的缓存,因此进行广播,发送查找IP为192.168.1.109的主机,并要求将结果返回给IP地址为192.168.1.112的主机即本机,使用的协议是ARP协议。
(1)分析第一行,帧的基本信息:
由结果分析可以得到:
帧的编号(Frame Number):856
帧的长度(Frame Length):42个字节
捕获到的长度(Capture Length):42个字节
帧被捕获的日期和时间(Arrival Time):2016年5月29日,23点15分45.851354000秒
距离前一个帧的捕获时间(Time delta from previous captured/displayed frame0.442497000秒
距离第一个帧的捕获时间差(Time since reference or first frame):181.741785000秒
帧装载的协议:eth:ethertype:arp
(2)分析第二行,数据链路层:
由结果分析得到:
目的地址(Destination):Broadcast (ff:ff:ff:ff:ff:ff)
源地址(Source):HonHaiPr_3f:8a:55(b0:10:41:3f:8a:55)
协议类型:ARP(0x0806)
(3)分析第三行,ARP协议:
由结果分析得到:
硬件类型(Hardware type):Ethernet(1)
协议类型:IPv4(0x0800)
硬件信息在帧中占的字节数(Hardware size):6
协议信息在帧中占的字节数(Protocol size):4
操作命令为:request(1)请求
发送方的MAC地址(Sender MAC address):HonHaiPr_3f:8a:55(b0:10:41:3f:8a:55)
发送方的IP地址(Sender IP address):192.168.1.112
目标的MAC地址(Target MAC address):00:00:00_00:00:00(00:00:00:00:00:00)
目标的IP地址(Target IP address): 192.168.1.109
2.响应报文:
(1)截图:
由最上方报文信息可以看到,IP地址为192.168.1.109主机接收到该ARP请求后,就发送一个ARP的REPLY命令,其中包含自己的MAC地址。
(1)分析第一行,帧的基本信息:
由结果分析可以得到:
帧的编号(Frame Number):857
帧的长度(Frame Length):42个字节
捕获到的长度(Capture Length):42个字节
帧被捕获的日期和时间(Arrival Time):2016年5月29日,23点15分41.911804000秒
距离前一个帧的捕获时间(Time delta from previous captured/displayed frame)0.060450000秒
距离第一个帧的捕获时间差(Time since reference or first frame):181.802235000秒
帧装载的协议:eth:ethertype:arp
(2)分析第二行,数据链路层:
由结果分析得到:
目的地址(Destination): HonHaiPr_3f:8a:55(b0:10:41:3f:8a:55)
源地址(Source):HonHaiPr_ e1:3e:71(d0:7e:35:e1:3e:71)
协议类型:ARP(0x0806)
(3)分析第三行,ARP协议:
由结果分析得到:
硬件类型(Hardware type):Ethernet(1)
协议类型:IPv4(0x0800)
硬件信息在帧中占的字节数(Hardware size):6
协议信息在帧中占的字节数(Protocol size):4
操作命令为:reply(2) 回应
发送方的MAC地址(Sender MAC address): HonHaiPr_e1:3e:71(d0:7e:35:e1:3e:71)
发送方的IP地址(Sender IP address):192.168.1.109
目标的MAC地址(Target MAC address): HonHaiPr_3f:8a:55(b0:10:41:3f:8a:55)
目标的IP地址(Target IP address): 192.168.1.112
八、实验结论
-
通过本次精心设计并严格执行的实验,成功借助 Wireshark 强大的网络包捕获与分析功能,完整地捕获并深入剖析了 ARP 协议在 ping 操作过程中的请求报文和响应报文。这一过程不仅验证了实验环境的正确性和实验步骤的有效性,更为深入理解 ARP 协议的实际工作机制提供了坚实的数据支持。
-
明确了 ARP 请求报文的广播特性,其以广播形式在局域网内广泛传播,旨在精准查找目标 IP 地址对应的 MAC 地址。在请求报文中,详细包含了发送方的 IP 地址、MAC 地址以及目标 IP 地址等关键信息,这些信息构成了 ARP 协议实现地址解析的基础元素,通过广播方式确保在网络中尽可能广泛地寻找目标主机,为建立准确的 IP - MAC 地址映射关系迈出了关键的第一步。
-
深入理解了 ARP 响应报文的生成机制和作用。当目标主机接收到 ARP 请求报文后,迅速构造并发送 ARP 应答报文,其中包含了自身的 MAC 地址以及发送方和目标的相关 IP 地址等重要信息,操作命令为 reply。响应报文的及时返回确保了发送方主机能够获取到目标主机的 MAC 地址,从而实现双方之间的直接通信,完成 ARP 协议的动态地址映射过程,为后续的网络数据传输奠定了基础。
-
全面掌握了 ARP 报文在数据链路层和 ARP 协议层的详细格式规范。在数据链路层,明确了帧的基本信息,包括帧的编号、长度、捕获时间等,这些信息对于网络数据包的管理、追踪和性能分析具有重要意义;同时,清晰了解了目的地址、源地址和协议类型等字段的含义和作用,它们共同构成了数据链路层数据包的关键标识和路由信息。在 ARP 协议层,深入掌握了硬件类型、协议类型、字节数、操作命令等协议相关信息,这些参数不仅规定了 ARP 协议的运行环境和数据格式,更体现了 ARP 协议在实现 IP 地址与 MAC 地址动态映射过程中的精确性和高效性。
-
深刻认识到 ARP 协议在局域网通信中的核心重要性。它作为实现 IP 地址到 MAC 地址映射的关键协议,确保了网络数据包