Wireshark实战分析之ARP协议

ARP(Address Resolution Protocol)协议,地址解析协议。该协议的功能是将IP地址转化为物理地址。

可能有人就会问了? 为什么ARP的功能是将IP地址转化为物理地址?

对于上面这个问题,我们就不得不说OSI七层模型了,关于OSI七层模型的详细我这了不做过多介绍。其中IP地址是在第三层即网络层,MAC地址是在第二层即数据链路层,他们彼此是不能通信的。在通过以太网发送IP数据包时,需要先封装IP地址和MAC地址报头的。但是由于发送数据包时知道目标的IP地址,而是不知道目标的MAC地址的,而彼此通信就必须知道对方的MAC地址,所以需要使用ARP地址解析协议。

既然知道ARP协议的作用,那接着说ARP的工作流程,它到底是如何工作的?

如上图所示,ARP工作分为2个阶段,第一阶段ARP请求,第二阶段ARP响应。

假设PC1的IP为192.168.1.1, PC2的IP为192.168.1.2。此时PC1想给PC2发送数据

(1)PC1会在自己的本地的ARP缓存表中通过PC2的IP地址检查与之对应的MAC地址

(2)如果在自己本地的ARP缓存表中没有找到与之匹配的MAC地址,PC1就会将ARP的请求帧广播到本地网络的所有主机。当本地网络上所有主机都接收到ARP请求后,并且检查是否与自己的IP地址相匹配,如果补匹配则会丢弃。

(3)此时PC2也会收到ARP请求报,PC2确定ARP请求中的IP地址与自己的IP地址相匹配,则会将PC1的地址和MAC地址加入到自己的本地ARP缓存表中

(4)此时PC2会将包含自己的MAC地址的ARP响应包回复到PC1,此时是单播

(5)当PC1收到主机PC2发来的ARP响应包后,会将PC2的IP地址和MAC地址一同加入到自己的本地ARP缓存表中。当然这不是永久性的,默认有效期是120s,当时间超时后,将会删除该条目,然后重新上述的过程。


可能有人就会问, 什么是ARP缓存表? 有什么作用?

ARP缓存表就是记录IP地址和经过解析后的MAC地址对应的条目的一张表。因为一个局域网中的电脑少则几台,多则几百台。这么多电脑之间通信,不可能每次都去获取MAC地址,所以就有了ARP缓存表。

当然可以通过Window中的运行,查看ARP命令

当然可以通过arp -a 显示ARP表


本节学习如何获取ARP协议包,以及分析ARP数据。

分析之前,先看看ARP的报文格式

上图是ARP请求、应答报文的格式,下面做详细解释

对以太网首部来说:

如果是请求ARP报文的话,以太网目的地址: 是(全1)的,是广播报,目的是让局域网上所有主机都收到ARP请求包

以太网源地址: 就是发送端地址。

帧类型: 如果是ARP报文,值为0x0806

硬件类型: 表明ARP协议实现在那种类型的网络上,它的值为1,即表示以太网地址

协议类型:表示解析协议(上层协议),这里一般是0800,即IP

硬件地址长度:也就是MAC地址长度,即6个字节

协议地址长度:也就是IP地址长度,即4个字节

操作类型:表示ARP协议数据报类型。1表示请求报文,2表示应答报文

发送端以太网地址:也就是源MAC地址

发送端IP地址:也就是源IP地址

目的端以太网地址:目标端MAC地址(如果是请求报文,是全0)

目地端IP地址:也就是目地端的IP地址


既然了解了ARP的详细格式,就尝试获取ARP报文。

实例:

如上图所示,pc1给pc2发送ARP请求,此时使用Wireshark获取ARP抓包数据


既然都获取到ARP的数据,那就分析ARP的数据。

先分析ARP请求数据报文:

选中57帧,可以在wireshark中查看报的详细信息:


当PC1发送的ARP请求报文,以广播报的形式发送到局域网后,当pc2检测到IP地址与自己的IP相同,就会发送给PC1响应报文,也就是58帧

对于ARP响应包来说,源IP,目地IP,源MAC,目地MAC都是知道了的。


关于分析ARP响报文,就分析到这里


### 回答1: Wireshark 是一款常用的网络协议分析工具,可以用来捕获和分析网络数据包。其中,ARP(地址解析协议)是一种重要的网络协议,用于将 IP 地址转换为 MAC 地址,以实现网络通信。 要进行 Wireshark ARP 协议分析实验,可以按照以下步骤操作: 1. 打开 Wireshark 软件,选择要进行抓包的网络接口。 2. 在过滤器中输入“arp”,以过滤出所有 ARP 协议的数据包。 3. 进行网络通信,例如 ping 命令,观察 Wireshark 中抓到的 ARP 数据包。 4. 分析 ARP 数据包的各个字段,包括源 MAC 地址、目标 MAC 地址、源 IP 地址、目标 IP 地址等,以了解 ARP 协议的工作原理和实现方式。 5. 根据分析结果,进一步优化网络配置和调整网络性能。 通过 Wireshark ARP 协议分析实验,可以深入了解网络通信中的 ARP 协议,发现潜在问题并进行相应的优化和改进,提高网络性能和稳定性。 ### 回答2: Wireshark是一款网络协议分析器,它可以用来分析各种网络协议的数据包,并且能够帮助我们识别和解决一些网络问题。ARP协议是一种地址解析协议,它将网络层的IP地址映射到物理层的MAC地址。在本次实验中,我们使用Wireshark分析ARP协议,在此简要介绍一下实验内容和相关知识。 实验步骤: 1.通过ARP查询获取目标主机的MAC地址 2.在Wireshark中捕获ARP数据包 3.观察分析数据包的内容和格式 4.找到目标主机的IP地址和MAC地址 实验过程: 在我们的实验中,我们使用了两台主机,分别是发送ARP请求的主机和接收ARP请求的主机。我们首先在发送ARP请求的主机上打开Wireshark,并设置过滤条件为"arp",然后在接收ARP请求的主机上使用"arp -a"命令获取当前主机的IP地址和MAC地址,并将IP地址告知发送ARP请求的主机。 接下来,我们在发送ARP请求的主机上开启一个ARP查询,也就是arp -s命令,将目标主机的IP地址和MAC地址映射到ARP表中,然后使用ping命令测试连接。在这个过程中,我们会捕获到所有的ARP数据包,并使用Wireshark分析数据包的格式和内容。在Wireshark中,我们可以看到ARP数据包的具体内容,包括数据包的类型、目的MAC地址、源MAC地址、目的IP地址、源IP地址等。 通过分析这些数据包,我们可以了解到ARP协议的作用和原理,以及如何使用Wireshark分析网络数据包。此外,我们还可以通过ARP协议Wireshark来发现网络问题,并在实际操作中进行修复,确保网络的稳定性和可靠性。 总结: 本次实验主要介绍了使用Wireshark分析ARP协议的方法,在实验中我们学习了ARP协议的作用和原理,以及如何使用Wireshark分析网络数据包。通过这些实验,我们可以更加深入地了解网络通信的基本原理和实现。同时,我们也能够更好地掌握网络调试和问题排查的方法,提高网络的可靠性和安全性。 ### 回答3: Wireshark是一个强大的网络分析工具,可以帮助我们进行网络流量的监控和调试。其中,ARP(Address Resolution Protocol)协议是用于实现IP地址到MAC地址映射的关键协议。 在Wireshark中,我们可以通过捕获ARP协议报文来进行网络环境的分析。具体地,我们可以采用ARP欺骗的方式,生成大量的ARP请求和响应的报文进行抓包。通过对抓到的报文进行解析,可以得到一下几方面的信息: 1. 报文的源地址和目的地址:ARP协议主要是用于实现IP地址到MAC地址的转换,因此,我们可以从报文中获取源IP地址和源MAC地址、目的IP地址和目标MAC地址等信息,这些信息可以很好地描述网络拓扑结构。 2. 报文的类型和操作类型:ARP消息类型主要分为ARP请求和ARP响应,分别由不同的操作代码表示。抓取到的ARP报文中,我们可以分别得到请求或者响应报文的具体类型,这些信息可以帮助我们进行网路安全的监控。 3. 报文的有效载荷:除了报文头部的信息外,还有报文的有效载荷,其中包含了IP地址到MAP地址的转换信息。我们可以通过对载荷的分析,得出不同主机之间的通信和对应的MAC地址。 总之,在Wireshark中进行ARP协议分析,可以帮助我们更好地了解网络架构和通信过程,帮助我们进行防范和应对网络攻击。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值