首页 > 其他分享 >《计算机网络微课堂》3-7-3 ARP 协议

《计算机网络微课堂》3-7-3 ARP 协议

时间:2024-05-26 15:23:40浏览次数:21  
标签:ARP 主机 报文 地址 计算机网络 MAC IP 课堂

在之前的课程中,‍‍我们分别介绍了属于数据链路层范畴的 MAC 地址和属于网络层范畴的 IP 地址,‍‍以及数据包在传输过程中 IP 地址和 MAC 地址的变化情况之后,我们提出了这样一个问题,‍‍那就是如何通过 IP 地址找到其相应的 IP 地址?‍‍这就是本节课我们将要介绍的地址解析协议,ARP 所要实现的主要功能。

‍‍下面‍‍我们就来举例说明‍‍ ARP 协议的工作原理,这是一个共享总线型的以太网,为了简单起见,‍‍我们只画出了该网络中的三台主机,各主机所配置的 IP 地址,和其网卡上固化的 MAC 地址,‍‍如图所示

假设主机 B 要给主机 C 发送数据包,主机 B 知道主机 C 的 IP 地址,但不知道它的 MAC 地址,因此主机 B 的数据链路层在封装 MAC 帧时,就无法填写目的 MAC 地址字段,进而也就无法构建出要发送的 MAC 帧。

实际上每台主机都会有一个 ARP 高速缓存表,例如这是主机 B 的 ARP 高速缓存表,ARP 高速缓存表中记录有 IP 地址和 MAC 地址的对应关系。例如这是主机 B 之前获取到的主机 A 的 IP 地址与 MAC 地址的对应关系。在本例中当主机 B 要给主机 C 发送数据包时,会首先在自己的 ARP 高速缓存表中查找主机 C 的 IP 地址所对应的 MAC 地址,但未找到,因此主机 B 需要发送 ARP 请求报文,来获取主机 C 的 MAC 地址。

‍‍ARP 请求报文的内容是:我的 IP 地址为 192.168.0.2,‍‍我的 MAC 地址为 00e0f9a34377,我想知道 IP 地址为‍‍192.168.0.3 的主机的 MAC 地址。

需要说明的是为了简单起见,‍‍这里我们以比较通俗的语言来描述 ARP 请求报文的内容,但实际上‍‍ ARP 请求报文有其具体的格式。另外需要大家注意的是‍‍ ARP 请求报文被封装在 MAC 帧中发送,目的只为广播地址。

  • 主机 B 发送封装有 ARP 请求报文的广播帧,总线上的其他主机都能收到该广播帧‍‍
  • 主机 A 的网卡收到该广播帧后,将其送交上层处理。‍‍上层的 ARP 进程解析 ERP 请求报文,‍‍发现所询问的 IP 地址不是自己的 IP 地址,因此不予理会
  • 主机 C 的网卡收到该广播之后,‍‍将其上交上层处理,上层的 ARP 进程解析 ARP 请求报文,‍‍发现所询问的 IP 地址,正是自己的 IP 地址,需要进行响应
  • 主机 C 首先将 ARP 请求报文中‍‍所携带的主机 b 的 IP 地址与 MAC 地址记录到自己的 ARP 高速缓存表中,然后给主机 b‍‍发送 ARP 响应报文,以告知自己的 MAC 地址

ARP 响应报文的内容是‍‍我的 IP 地址是 192.168.0.3,我的 MAC 地址为‍‍00-0c-Cf-b8-4a-82,需要注意的是 ARP 响应报文‍‍被封装在 MAC 帧中,发送目的地址为主机 b 的 MAC 地址,‍‍主机 c 给主机 b 发送封装有 ARP 响应报文的单播帧,总线上的其他主机都能收到该单播帧。‍‍

主机 A 的网卡收到该单波针后,发现其目的 MAC 地址与自己的 MAC 地址不匹配,直接丢弃该帧。‍‍

主机 B 的网卡,收到该单波帧后,发现其目的 MAC 地址,就是自己的 MAC 地址,将其交付上层处理。‍‍

上层的 ARP 进程解析 ERP 响应报文,将其所包含的主机 C 的 IP 地址与 MAC 地址‍‍记录到自己的 ARP 高速缓存表中。

主机 B 现在可以给主机 C 发送之前发送的数据包了,‍‍ARP 高速缓存表中的每一条记录都有其类型,类型分为动态和静态两种:

  • 动态类型是指‍‍记录是主机自动获取到的,其生命周期默认为两分钟,当生命周期结束时,‍‍该记录将自动删除。这样做的原因是 IP 地址与 MAC 地址的对应关系并不是永久性的。‍‍例如当主机的网卡坏了,更换新的网卡后,主机的 IP 地址并没有改变,‍‍但主机的 MAC 地址改变了
  • 静态类型是指记录是用户或网络维护人员手工配置的‍‍。不同操作系统下的生命周期不同,例如系统重启后不存在,或在系统重启后依然有效‍‍‍‍

接下来请大家思考一下,在下图所示的网络拓扑中,主机 H1 是否可以使用 ARP 协议‍‍获取到主机 H2 的 MAC 地址?回答是否定的,ARP 协议只能在一段链路‍‍或一个网络上使用,而不能跨网络使用。‍‍对于本地 ARP 协议的使用是逐段链路进行的

‍‍本节课到这里就结束了。我们将之前课程中曾介绍过的 MAC 地址,IP 地址‍‍以及本节课介绍的地址解析协议 ARP 的内容小结如下:

需要说明的是‍‍除 ARP 请求和响应报文外,ARP 还有其他类型的报文,‍‍例如用于检查 IP 地址冲突的无故 ERP,或称免费 ERP。另外‍‍ ARP 协议没有安全验证机制,‍‍存在 ARP 欺骗或攻击等问题。

标签:ARP,主机,报文,地址,计算机网络,MAC,IP,课堂
From: https://www.cnblogs.com/PeterJXL/p/18213720

相关文章

  • 《计算机网络微课堂》1-5 计算机网络的性能指标
    本节课我们介绍计算机网络的性能指标,性能指标可以从不同的方面来度量计算机网络的性能。常用的计算机网络性能指标有8个:速率、带宽、吞吐量、时延、时延带宽积,往返时间、利用率,丢包率。‍速率首先介绍速率。为了能够更好的理解速率,我们需要先了解比特:比特是计算机中数据量的......
  • 《计算机网络微课堂》1-6 计算机体系结构
    常见的计算机网络体系结构从本节课开始,我们要用4次课的时间来介绍有关计算机网络体系结构的知识,具体包含以下内容:一,常见的计算机网络体系结构二,计算机网络体系结构分层的必要性三,计算机网络体系结构分层思想举例四,计算机网络体系结构中的专用术语‍计算机网络体系结构......
  • 《计算机网络微课堂》2-2 物理层下面的传输媒体
    请大家注意,传输媒体不属于计算机网络体系结构的任何一层,如果非要将它添加到体系结构中,‍‍那只能将其放在物理层之下。传输媒体可分为两类:一类是导引型传输媒体,‍‍另一类是非导引型传输媒体。在导引型传输媒体中,电磁波被导引沿着固体媒体传播,‍‍常见的导引型传输媒体有同轴电......
  • 《计算机网络微课堂》第二章 物理层
    2-1物理层的基本概念在计算机网络中‍‍用来连接各种网络设备的传输媒体,种类众多,大致可以分为两类,一类是导引型传输媒体,‍‍另一类是非导引型传输媒体。‍‍在导引型传输媒体中常见的有双绞线,同轴电缆,‍‍光纤。在非导引型传输媒体中常见的是微波通信,例如使用2.4G赫兹‍‍和......
  • 《计算机网络微课堂》2-3 传输方式
    本节课我们介绍几种传输方式:串行传输和并行传输同步传输和异步传输单工,半双工‍‍以及全双工通信​​串行我们首先来看串行传输和并行传输,串行传输是指‍‍数据是一个比特依次发送的,因此在发送端和接收端之间‍‍只需要一条数据传输线路即可。‍并行传输是指‍‍一次发送......
  • 《计算机网络微课堂》2-5 信道的极限容量
    本节课我们介绍信道极限容量的有关问题。我们都知道信号在传输过程中会受到各种因素的影响,如图所示,这是一个数字信号,‍‍当它通过实际的信道后,波形会产生失真,当失真不严重时,在输出端‍‍还可根据以失真的波形还原出发送的码元,但当失真严重时,在输出端‍‍就很难判断这个信号‍‍在......
  • 《计算机网络微课堂》2-4 编码与调制
    本节课我们介绍编码与调制,在计算机网络中计算机需要处理和传输用户的文字、图片、音频和视频,‍‍他们可以统称为消息。数据是运送消息的实体,我们人类比较熟悉的是十进制数据,‍‍而计算机只能处理二进制数据,也就是比特0和比特1,计算机中的网卡‍‍将比特0和比特1‍‍变换成相......
  • 《计算机网络微课堂》第三章 链路层
    3.1:概述---本节课我们对数据链路层进行概述,我们首先来看看数据链路层在网络体系结构中的地位。如图所示主机H1给主机H2发送数据,中间要经过三个路由器和电话网、局域网以及广域网等多种网络。​​从五层协议原理体系结构的角度来看,主机应具有体系结构中的各个层次,而路由器......
  • 《计算机网络微课堂》3-3 差错检测
    我们知道‍‍实际的通信链路都不是理想的,比特在传输过程中可能会产生差错,1可能变成0,‍‍而0也可能变成1,这称为比特差错。如图所示,比特流在传输过程中,‍‍由于受到各种干扰,就可能会出现比特差错或称为误码。‍‍在一段时间内‍‍传输错误的比特占所传输比特总数的比率成为误......
  • 《计算机网络微课堂》3-2 封装成帧
    ‍‍所谓封装成帧就是指数据链路层给上层交付下来的协议数据单元,添加帧头和帧尾,‍‍使之成为帧。例如下图所示在帧头和帧尾中包含有重要的控制信息,例如‍‍这是以太网版本2的MAC帧格式,这是上层交付下来的协议数据单元,这是帧头,‍‍这是帧尾,这是点对点协议PPP的帧格式,这是上......