当前位置: 首页 > news >正文

ARP协议的工作原理

一、ARP的定义

ARP协议(地址解析协议):根据IP地址以广播方式获取与其对应的目标主机MAC地址,并将MAC地址存入ARP缓存表。

注意:IP地址是可变的,而MAC地址(即物理地址)是唯一的。 

二、ARP的工作原理

1、在PC1给PC2发送数据之前,先查看PC1的缓存表中是否有目标主机PC2的MAC地址记录。(若没有)

2、PC1发送ARP请求报文(广播),用来查找目标主机IP所对应的MAC地址。由于不知道目标主机的MAC地址,所以目标MAC地址设置为广播地址0xFFFFFFFFFFFF,此报文便会发送给局域网中的所有主机设备。

 

3、所有主机在收到ARP请求消息后,由于请求的目标IP地址与PC2的IP地址匹配上了,故目标主机PC2回复ARP应答报文给PC1(单播);而其它不匹配的主机则丢弃该ARP请求

4、PC1更新ARP缓存,将目标主机的IP地址与MAC地址的对应关系存储在ARP缓存表中,并使用目标主机的MAC地址发送数据目标主机。(在缓存表里的MAC地址可以用来直接发送数据,而不用在广播查找MAC地址了)

 三、ARP报文在链路层进行封装

ARP报文不是直接在网络层上发送的,它还是需要向下传输到数据链路层,所以当ARP报文传输到数据链路层之后,需要再次进行封装。以以太网为例,ARP报文传输到以太网数据链路层后会形成ARP帧。ARP帧如下图所示,他就是在ARP报文前面加了一个以太网首部。 

  • 目的MAC地址:为广播MAC地址(FF-FF-FF-FF-FF-FF),其目标主机是网络上的所有主机。
  • 源MAC地址:为发送ARP帧的源MAC地址。
  • 帧类型:这里用来标识帧封装的上层协议,因为本帧的数据部分是ARP报文,所以直接用ARP的协议号 0x0806。(若是IP协议号,为0x0800)

四、ARP工作流程


http://www.mrgr.cn/news/81190.html

相关文章:

  • flink+kafka实现流数据处理学习
  • Unity 圆形循环复用滚动列表
  • Zookeeper的监听机制
  • 2024年11月HarmonyOS应用开发者高级认证 最新题库
  • 《计算机组成及汇编语言原理》阅读笔记:p28-p47
  • 【潜意识Java】深度解析黑马项目《苍穹外卖》与蓝桥杯算法的结合问题
  • 双足机器人《荣耀机甲H1》到手体验
  • docker下载镜像设置
  • 重温设计模式--备忘录模式
  • 谷歌开发者工具-元素篇
  • 重温设计模式--状态模式
  • ArrayList类 (顺序表)
  • Linux的VIM基本操作
  • 两台主机传送数据: transfer files between servers使用rsync命令
  • Linux网络——UDP的运用
  • UE5 移植Editor或Developer模块到Runtime(以运行时弹窗为例)
  • Dapper
  • C++设计模式:组合模式(公司架构案例)
  • 【IC】TSMC先进工艺发展历程--从N5到A16,从A16到未来
  • 某尝准app请求体响应加密分析
  • 多行为级联24|多行为推荐的超图增强级联图卷积网络
  • HashMap源码深度解析
  • CentOS HTTPS自签证书访问失败问题的排查与解决全流程
  • SpringCloud 运用(2)—— 跨服务调度
  • 访谈积鼎科技总经理:国产CFD软件发展与未来趋势展望
  • GitCode 光引计划投稿|JavaVision:引领全能视觉智能识别新纪元