1. ARP是地址解析协议,每台主机都有一个ARP缓存区,里边保存着同网络中IP地址到MAC地址的映射。他只能解析同一物理网络上的MAC地址。
    下边举个例子来说明ARP协议的工作原理,假设A要向B发送数据,此时只知道B的IP地址,IP包总要通过物理网络传输,它需要知道目的主机的MAC地址。(⚠️IP地址并不标示一台主机而是标示一台主机与网络的一个连接)
  • A首先从自己的ARP缓存表查询是否有B主机IP到MAC的映射,如果有那么向B发送数据即可
  • 如果没有查询到那么A会向本网络的所有主机广播ARP请求报文,该数据包中包含A主机的IP、Mac地址以及B主机的IP地址
  • 网络上所有主机接收该数据包,将数据包中的B主机的IP地址与自己进行比对,如果不同那么丢弃该数据包,如果相同则说明该主机是目的主机,B首先将A的IP和MAC地址保存到自己的ARP缓存表中,若已经存在则覆盖;然后将自己的MAC地址添加到数据包中作为响应报文单播发送给主机A。
  • 主机A接收到B发送过来的响应报文,将其中的B主机的IP和Mac地址的额映射保存到自己的ARP缓存区中,然后向B发送数据
  1. RARP逆向地址解析协议。它应用于无盘机,用于实现MAC地址到IP地址的映射。
    首先需要介绍一下无盘机的概念。一个网络中的所有主机都不安装硬盘,通过网络服务来启动,这些主机都不保存自己的IP地址,这样的网络叫做无盘网络,这些机器叫做无盘机或者无盘工作站,无盘网络主要为方便管理维护无盘机而存在。
  • 在具有广播能力的网络中设置一个RARP服务器,里边保存着MAC-IP的映射,一台主机启动后获得自己的MAC地址,向网络中广播RARP请求报文,RARP服务器接收到请求报文后查询到该工作站的MAC-IP映射,封装到响应报文中返回给请求者。

ARP与RARP协议原理解析相关推荐

  1. ARP和RARP协议工作原理

    ARP和RARP协议工作原理 MAC地址与IP地址是计算机网络通信中非常重要的两类地址,缺一不可.因为在OSI/RM网络层以上是通过IP地址进行寻址的,而在OSI/RM网络层以下则是通过MAC地址进行 ...

  2. DNS与ARP的关系与原理解析

    DNS与ARP的关系与原理解析 "计算机之间进行通信的只靠IP地址不能完成吗?" 01 前言 我们在上网查询某一个网站的时候,比如谷歌搜索,一般都是输入www .google.co ...

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

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

  4. 计算机网络rarp通过什么找ip,ARP与RARP协议

    在数据链路层中,用来标识节点的就是其MAC地址.它是局域网中进行网络通信的基础.但是在平常的网络通信操作中,都不是以MAC地址来指定目标节点的,而是以IP地址或NetBiOS名称.这样就存在一个IP地 ...

  5. ARP与RARP 协议

    目录 概述 以太网的传输机制 两者的基本关系 ARP 计算机A是如何得知B的MAC地址的呢? 地址解析协议 ARP的实现过程 ARP 高速缓存的作用 ARP协议注意到的问题 ARP代理 使用 ARP ...

  6. ARP与RARP协议详解 (三)

    (参考文献)TCP/IP详解,卷1:协议 当一台主机把以太网数据帧发送到位于同一个局域网上的另一台主机时,是根据48bit的以太网地址来确定目的接口的.设备驱动程序重来不检查IP数据报中的目的地址.A ...

  7. ARP和RARP协议

    一. 什么是ARP ARP协议是"Address Resolution Protocol"(地址解析协议)的缩写.其作用是在以太网环境中,数据的传输所依懒的是MAC地址而非IP地址 ...

  8. 细聊网络层协议之ARP、RARP协议

    一.两台主机之间的通信解读ARP 首先我们必须明白一点的是,IP地址只在网络及其以上的层有用,在链路层及以下的层是没有用的.TCP/IP协议栈从上层到下层的封装过程中,第三层封装需要知道目的IP,第二 ...

  9. Http协议原理解析

    一:http的由来: OSI模型把网络通信分成七层:物理层.数据链路层.网络层.传输层.会话层.表示层和应用层,对于开发网络应用人员来说,一般把网络分成五层,这样比较容易理解.这五层为:物理层.数据链 ...

最新文章

  1. Python,OpenCV进行直方图反投影
  2. 重载函数与函数模板(转)
  3. Django1.10文档学习笔记二
  4. Hybrid App开发者一定不要错过的框架和工具
  5. HashSet,TreeSet和LinkedHashSet的区别
  6. IOS , plist 配置项说明
  7. -bash: ulimit: pipe size: cannot modify limit: Invalid argument
  8. ssl1715-计算面积【差积】
  9. JUnit:使用Java 8和AssertJ 3.0.0测试异常
  10. opencv2 取二进制数据_百亿数据量下,掌握这些Redis技巧你就能Hold全场
  11. 浏览器事件循环机制与Vue nextTick的实现
  12. CVE-2014-6332学习笔记
  13. 随机森林进行特征选择
  14. Node.js--下载、安装、配置
  15. 欢迎使用CSDN-markdown编辑器萨达所大所大所大所
  16. 10个免费的游戏开发引擎
  17. 光无线通信理论知识学习1
  18. 10.[STM32]ADC中断方式-采集MQ-3酒精传感器检测的酒精浓度
  19. AAAI2023 | 基于课程学习的机器翻译质量评估去噪预训练
  20. 跨境知道快讯:Anker出新招,一个月进账600万美金

热门文章

  1. WebAR也是元宇宙的一种? #geenee.ar 快速上手制作 AR 应用
  2. scrapy 教程 MySQL_scrapy框架使用教程
  3. 开源语义理解框架 Clause API 文档:快速实现聊天机器人
  4. 创客机器人比赛简讯_厦门思明区中小学机器人创客大赛圆满结束 300多名创客好手参与...
  5. 基于JavaWeb的学生成绩管理系统设计与实现
  6. 无法打开计算机上的event log服务,解决Win7 Windows Event Log服务无法启动问题
  7. 微信小程序 地址 生成二维码显示
  8. DNA在太空流浪网红教授,悔拒给《流浪地球》当顾问
  9. Android 8.0 行为变更
  10. 给宝宝早教c语言,亲爸用C语言给娃做早教,娃不耐烦的表情亮了,网友:是个高手!...