将IP地址转换成MAC地址的网络层协议

为什么需要ARP

位于网络层的主机和路由器是通过其逻辑地址标识的,在TCP/IP协议簇中,逻辑地址对应为IP地址,长度为32比特。

报文是通过物理网络送达主机和路由器的。在物理层中,通过各自的物理地址识别,其要求物理地址本地唯一,不必全局唯一。如以太网使用的48比特MAC地址。

报文传输需要两个层次的寻址:逻辑寻址、物理寻址

需要解决的问题:IP数据包包含的是IP地址,而路由器上的硬件接口只理解物理网络的寻址;硬件接口必不可少

地址映射和解析

静态映射:创建一张逻辑地址与物理地址相关联的表格。

静态映射的局限性主要体现在主机IP与MAC地址的更新。例如更换新的网卡等,会导致MAC地址或IP地址发生变化。因此,静态映射表需要周期性更新,而这将导致巨大的网络开销

动态映射:当主机知道逻辑或物理地址中的一个时,可以使用协议去查询对应的另一个地址

实现动态映射通常有两种协议:地址解析协议(Address Resolution Protocol,ARP)和逆向地址解析协议(Reverse Address Resolution Protocol,RARP)。

ARP将一个逻辑地址映射到一个物理地址,RARP将一个物理地址映射到一个逻辑地址。

ARP的四种情况

  1. 发送者是一台主机,向同一网络中的另一台主机发送报文。此时IP需要与一个物理地址建立映射
  2. 发送者是一台主机,向另一个网络中的另一台主机发送报文。主机查询路由表,查询下一跳路由器的IP地址。此时,路由器的IP地址成为必须映射到物理地址的逻辑地址。IP地址仍然是目的地址,而物理地址为下一跳路由器的MAC地址。
  3. 发送者是一台路由器,接收到一个目的地址是处于其他网络主机的数据包。发送者查询路由表,找到目的主机对应的下一跳的IP地址。下一跳的IP地址成为必须映射到物理地址的逻辑地址。此时,IP地址仍是目的地址,物理地址是通往目的主机的路径上下一跳路由器的MAC地址。
  4. 发送者是一台路由器,接受到目的地址是同一网络主机的数据报。数据报的目的IP成为必须映射到物理地址的逻辑地址。

RARP服务器

RARP服务器是一台特殊的服务器,可以通过配置来侦听RARP请求并作出应答。

RARP的工作方式

  1. 发送者生成RARP请求消息:源节点生成RARP请求,发送者MAC地址和目的地址均设置为本机的MAC地址。发送者IP和目的IP为空。
  2. 发送者广播RARP请求,在本地网络中。
  3. 本地节点处理RARP请求消息,通过本地网络中的RARP服务器。没有被设置为RARP服务器的主机会忽略这个请求。
  4. RARP服务器查询表中源节点的硬件地址,寻找对应的IP地址,发送者MAC和IP均设为RARP服务器自身的地址,目的MAC地址为源节点的MAC地址,目的IP地址为查询出的IP地址。
  5. RARP服务器发送RARP应答消息,通过单播形式,传回源节点。
  6. 源节点处理应答消息,将应答消息中的目的IP设为自身的IP地址。

RARP的限制

RARP是一个非IP协议,它不能被客户端的TCP/IP协议栈所处理。而且每一台中心服务器的MAC地址必须手动配置,并且协议只能返回一个IP地址。

因此,近年来RARP已经被停用,被引导程序协议(Bootstrap Protocol,BOOTP)与动态主机分配协议(Dynamic Host Configuration Protocol,DHCP)所取代。

地址解析协议(Address Resolution Protocol)相关推荐

  1. ARP(Address Resolution Protocol)地址解析协议初识

    ARP址解析协议是根据IP地址获取物理地址的一个TCP/IP协议.它工作在OSI七层模型的中第二层--数据链路层. 使用ARP地址解析协议,可根据网络层IP数据包包头中的IP地址信息解析出目标硬件地址 ...

  2. 地址解析协议(Address Resolution Protocol,ARP)

    1. IP地址 要说ARP,首先我们要知道IP地址的概念,IP地址是分配给主机的逻辑地址(或称协议地址),同时每个主机还有一个在子网内部唯一的MAC地址,我们把这个地址叫做物理地址或硬件地址.从网络互 ...

  3. netsh 查询mac地址_ARP(Address Resolution Protocol)地址解析协议

    当主机通过数据链路发送数据的时候,IP 数据报会先被封装为一个数据帧,而MAC 地址会被添加到数据帧的报头(链路层介绍时已讲过). ARP 便是在这个过程中通过目标主机的 IP 地址,查询目标主机的 ...

  4. 协议簇:Ethernet Address Resolution Protocol (ARP) 解析

    简介 前面的文章中,我们介绍了 MAC Frame 的帧格式.我们知道,在每个 Ethernet Frame 中都分别包含一个 48 bit 的源物理地址和目的物理地址. 对于源地址很容易理解,该地址 ...

  5. 图解地址解析协议ARP

    我们知道,网络层使用的是 IP 地址,而在实际网络的链路上传送数据帧时,最终还是必须使用链路层的 MAC 地址.所以,在链路上传送数据帧时只知道 IP 地址是不够的,我们还需要知道主机在网络中的有效 ...

  6. 互联网协议 — ARP 地址解析协议

    目录 文章目录 目录 ARP 简述 ARP 的基本功能 ARP 的数据包结构 ARP 的工作原理 ARP 的客户端 ARP Proxy(代理) ARP Probe(探测) ARP Spoofing(欺 ...

  7. 3、以太网基础知识——ARP地址解析协议原理

    返回目录 上一篇 下一篇 概述 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议.网络层以上的协议用IP地址来标识网络 ...

  8. 地址解析协议ARP(计算机网络)

    目录 一.IP地址与物理地址 二.ARP 与 RARP 三.ARP表 四.ARP 的工作过程 五.ARP 高速缓存的作用 六.地址映射项目的生存时间 七.ARP 的作用范围 八.为什么不直接使用物理地 ...

  9. ARP地址解析协议详解

    ARP地址解析协议详解 网络层的ARP协议完成IP地址与物理地址的映射.首先,每台主机都会在自己的ARP缓冲区中建立一个ARP缓存表,以表示IP地址和MAC地址的对应关系.当源主机需要将一个数据包发送 ...

最新文章

  1. java读avro的流_0016-Avro序列化反序列化和Spark读取Avro数据
  2. 为什么地磅的读数有进制么_谈谈二进制(三)——位运算及其应用
  3. 大数据如何预测上市公司的业绩?
  4. Android 近百个项目的源代码,覆盖Android开发的每个领域
  5. system(“”start calc“”)
  6. 网络知识:电脑无线网连接不上问题汇总!
  7. AIsing Programming Contest 2020 总结
  8. Wycieczki 线性代数
  9. (32)Gulp CSS hack 与 Autoprefixer
  10. 前端、后台和连接前端后台的网络数据传输
  11. QT pro文件 Win/Linux跨平台写法
  12. WebService学习之三:spring+cxf整合
  13. [读书笔记]密码文件总结
  14. 教妹学Java:数组打印最优雅的方式deepToString
  15. 最小二乘拟合曲线证明+正则方程
  16. EasyCVR对接大华SDK,视频回放无法播放的排查过程及解决方法
  17. 淘宝网站的设计与排版
  18. 梦三国解析服务器spl文件头失败怎么解决,梦三国 卡顿问题的解决方法
  19. java操作Excel表格使用EasyExcel
  20. Python 之 类 (Tom猫)

热门文章

  1. java内存泄露direct_详解SpringCloudGateway内存泄漏问题
  2. python-onvif 库踩坑
  3. Exposure X7胶片滤镜模拟软件 PS/LR调色插件 500+特效预设
  4. matlab从excel第二行写,matlab从某行读excel
  5. 计算机论文致谢词范文500字,2021年论文致谢词范文500字(通用5篇)
  6. 中国科学院计算机致谢,央视评中科院博士论文致谢走红
  7. OpenStack搭建过程(随笔搭建)
  8. java 异常之Cause: org.apache.ibatis.executor.ExecutorException: Executor was closed
  9. 2种升级 macOS 12 Monterey 的方法:快速又干净的升级方式
  10. 1分钟插入10亿行数据!抛弃Python,写脚本请使用Rust