ARP协议和RARP协议都是五层网络协议中的网络层协议。

  • ARP(Address Resolution Protocol)地址解析协议:作用是将网络层IP地址转换为数据链路层MAC地址,即完成IP地址与物理地址的映射

  • RARP(Reverse Address Resolution Protocol)逆地址解析协议:作用是完成硬件地址到IP地址的映射

ARP协议的工作原理

  • 1)首先,每个主机都会在自己的ARP缓冲区中建立一个ARP缓存表,以表示IP地址和MAC地址之间的对应关系。
  • 2)当源主机要发送数据时,首先检查自己的ARP列表中是否存在该IP地址对应的MAC地址
    • 如果有,则直接发送数据到该MAC地址;
    • 如果没有,就向本网段的所有主机发送ARP数据包,查询此目的主机对应的MAC地址;该数据包包括的内容有:(源主机 IP地址,源主机MAC地址,目的主机的IP 地址)。
  • 3)当本网络的所有主机收到该ARP数据包时,首先检查数据包中的目的IP地址是否是自己的IP地址;
    • 如果不是,则忽略该数据包;
    • 如果是,则首先从数据包中取出源主机的IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖;然后将自己的MAC地址写入ARP响应包中,并发送给源主机,告诉源主机自己是它想要找的MAC地址。
  • 4)源主机收到ARP响应包后,将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。
    • 如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。

RARP协议的工作原理

  • 1)发送主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址。
  • 2)本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址。
  • 3)如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用。
  • 4)如果不存在,RARP服务器对此不做任何的响应。
  • 5)源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。

ARP协议以及RARP协议的工作原理相关推荐

  1. 计算机网络基础(四)---网络层-ARP协议与RARP协议

    文章内容概览 还是看在上一篇文章中提到的这张图,计算机A将数据跨设备传输给C.A发出目的地为C的IP数据报,查询路由表发现下一跳为E,A将IP数据报交给数据链路层,并告知目的MAC地址是E.那么A是如 ...

  2. 软件测试面试题:I P协议、RARP协议、ICMP协议与ARP协议的功能是什么?

    I P协议.RARP协议.ICMP协议与ARP协议的功能是什么? IP 协议(Internet Protocol,因特网协议),属于 OSI7 层参考模型中的网络层协议.它提供两个基本功能:寻址和分段 ...

  3. 关于协议转换器的分类以及工作原理的详细介绍

    现如今,随着互联网的广泛应用,我们国内的网民也是突破了8.29亿,相信,大家对于网络这块是非常的熟悉了,它是一种虚拟的东西,但是它几乎存在于我们生活的各个角落,在很大程度的让我们的日常生活变得便捷与丰 ...

  4. 计算机网络-网络层篇-ARP协议与RARP协议

    目录 问题所在 解决方案 ARP协议 RARP协议 问题所在 对于简单的网络拓扑,数据帧的转发有4个步骤 A通过网卡发出数据帧 数据帧到达路由器,路由器取出前6字节 路由器匹配MAC地址表,找到对应的 ...

  5. TCP/IP详解学习笔记(3)-IP协议,ARP协议,RARP协议

    把这三个协议放到一起学习是因为这三个协议处于同一层,ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息.数据链路层可以从ARP得到数据的传送信息,而从IP得到要传输的数 ...

  6. TCP/IP详解--学习笔记(3)-IP协议,ARP协议,RARP协议

    ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息.数据链路层可以从ARP得到数据的传送信息,而从IP得到要传输的数据信息. 1.IP协议 IP协议是TCP/IP协议的 ...

  7. 【4】TCP/IP协议族详解-ARP协议和RARP协议

    声明:本博客参考<TCP/IP协议详解卷一:协议> 1.概述 在以太网中一台主机将数据帧从一台主机发送到另一台主机时,是根据48bit的以太网地址确定目的接口的.设备驱动程序从不检查IP数 ...

  8. arp协议与rarp协议

    说起arp,那么什么是arp呢?arp协议是什么呢?以及如果编写arp脚本抓取对应主机mac地址?这都是我以下需要讲的: 1.什么是ARP协议 ARP协议是"Address Resoluti ...

  9. 计算机网络 arp协议和rarp协议

    文章目录 1.arp协议 1.1 简介 1.2 功能 1.3 工作原理 2.rarp协议 2.1 简介 2.2 工作原理 1.arp协议 1.1 简介 地址解析协议,即ARP(Address Reso ...

最新文章

  1. 玩转数据结构从入门到进阶一
  2. chrome console 调试xpath
  3. Andy's First Dictionary
  4. js备忘录模式——实现分页点击已经请求过上一页的数据(读js设计模式)
  5. php OpenSSL 加解密
  6. Java引用类型——强引用、软引用、弱引用和虚引用
  7. jar包直接拷贝到WEB-INF/lib下和以userLibrary引入的区别
  8. python和revit_pyRevit系列教程1
  9. 不到一秒卖出一部!荣耀9X系列国内销售29天破300万台
  10. 为什么 Redis 默认 16 个库?90%以上程序员不知道!
  11. vasp软件全名是什么_qvasp一款简单易用的VASP辅助计算软件
  12. Windows7安装java
  13. SIM800A模块发短信调试中出现的问题并解决
  14. 安卓连接mysql数据库_Android客户端怎么与服务器数据库连接?
  15. ES6-rest参数
  16. ups机房动环监控系统方案
  17. python后端开发简历分享_Python后端开发工程师面试
  18. 【最全】you-get和youtube-dl的安装和使用
  19. dos攻击的工具——pentmenu
  20. dp P1968 美元汇率 题解

热门文章

  1. Objective-C与C语言的区别
  2. webstorm两个文件比对_webstorm 使用技巧
  3. Servlet 过滤器两种配置方法
  4. webpack 最好的日志_webpack externals 深入理解
  5. SAP AA固定资产上线后录入以前年度固定资产的处理方式
  6. Epson TM-T88IV 热敏票据打印机 【转】
  7. 假如让我来设计一套会议系统..
  8. 百度超级链沙龙回顾 | 百信银行梁俊锋:区块链技术在金融行业的应用探索
  9. win7 更改计算机基本信息,win7电脑中修改oem信息的具体操作方法
  10. 【framework】EventLog分析