ARP协议

什么是ARP

ARP(Address Resolution Protocol,地址解析协议)是用来将IP地址解析为MAC地址的协议。主机或三层网络设备上会维护一张ARP表,用于存储IP地址和MAC地址的映射关系。

为什么需要ARP

在局域网中,一台主机向另一台主机通信需要知道对方的IP地址,但是仅知道IP还不够。因为设备之间的通信是根据MAC地址进行的。当源设备要发送数据包到目标设备时,它会将数据包封装在以太网帧中,并在以太网帧头部填写目的设备的MAC地址和源设备的MAC地址。

以太网帧

以太网帧(Ethernet Frame)是在以太网(是局域网最广泛使用一种)中传输数据的基本单位。它是数据链路层的协议数据单元,用于在局域网内的设备之间进行通信。

ps 

数据段(Segment)是在传输层(中传输的数据单元。在传输层,原始数据被拆分成更小的块,每个块称为数据段。数据段包含了一些控制信息(如源端口号、目标端口号、序号等),以便于在通信双方之间建立可靠的数据传输连接。传输层协议(如TCP、UDP)将数据段打包并发送给网络层。

数据包(Packet)是在网络层中传输的数据单元。它是将原始数据(如文件、消息等)拆分成较小的块,并添加一些控制信息--IP首部,以便于在网络中传输和路由。数据包在网络中通过路由器进行转发和传递,最终到达目标主机。

ARP地址解析过程

  1. 发送ARP请求: 当设备需要发送数据到目标IP地址时,首先会检查本地的ARP缓存表,查找是否有目标IP地址对应的MAC地址。如果没有找到,设备将发送一个ARP请求广播到局域网上的所有设备。

  2. ARP广播:发送ARP请求的设备会将ARP请求的目标MAC地址设置为全0(全零)的广播地址(FF:FF:FF:FF:FF:FF),意味着它会被发送到局域网上的所有设备。ARP请求包含发送方设备的MAC地址、IP地址以及目标IP地址。

  3. 目标设备响应: 目标设备接收到ARP请求后,会检查自己的IP地址是否与ARP请求中的目标IP地址匹配。如果匹配,目标设备将发送一个ARP应答(ARP Reply)给发送方设备。

  4. 更新ARP缓存表: 发送方设备接收到ARP应答后,会将目标设备的IP地址和MAC地址添加到本地的ARP缓存表中。这样,在后续的通信中,发送方设备就可以直接使用目标设备的MAC地址发送数据。

  5. 数据传输: 一旦发送方设备获取到了目标设备的MAC地址,它会使用该地址封装数据并发送到目标设备。

ARP解析过程中需要注意以下几点:

  • ARP请求和应答只在同一局域网范围内进行。如果发送方设备和目标设备不在同一个局域网上,需要通过路由器进行跨网段通信。源主机首先会发送ARP请求报文,请求网关的IP地址对应的MAC地址。源主机收到ARP应答报文后,将数据报文封装并发给网关,再由网关将数据报文发送给目的主机。
  • ARP缓存表是动态学习和更新的,当设备长时间没有和某个IP地址通信时,相关的ARP条目可能会过期并从缓存表中删除。
  • ARP请求和应答是基于广播的,意味着所有设备都会收到这些消息。但根据MAC地址过滤,只有目标设备会响应ARP请求。

ARP报文格式

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值