ARP为IP地址到对应的硬件地址之间提供动态映射。RARP是被那些没有磁盘驱动器的系统使用(一般是无盘工作站或X终端),它需要系统管理员进行手工设置。

AD:WOT2015 互联网运维与开发者大会 热销抢票

关于ARP的简述

ARP:Address Resolution Protocol 地址解析协议。

RARP:Reverse Address Resolution Protocol 逆向地址解析协议。

不同的网络,如以太网,令牌网...,在数据链路层都有不同的寻址机制。

在以太网的局域网中,一台主机和另外一台主机通信发包,是根据48bit的以太网地址来确定目的接口的,设备驱动程序从不检查IP数据报中的目的IP地址。

地址解析协议(ARP)为这两种不同的地址形式提供映射:32bit的IP地址和数据链路层48bit地址的转换。RFC 826[Plummer1982]是ARP规范描述文档。

ARP为IP地址到对应的硬件地址之间提供动态映射。RARP是被那些没有磁盘驱动器的系统使用(一般是无盘工作站或X终端),它需要系统管理员进行手工设置。

ARP通信过程解析:

(1).比如在一个局域网上,一台主机A(192.168.0.12)要访问机器B(192.168.0.11)。他会发送一份称作ARP请求的以太网数据帧给以太网上的每个主机(广播包)。ARP请求数据帧中包含目的主机的IP地址,意思就是:“如果你是这个IP地址的拥有者,请回答你的硬件地址。”

(2).目的主机收到这份广播报文后,识别出这是发送端在寻问它的IP地址,于是发送一个ARP应答。这个ARP应答包含IP地址及对应的硬件地址。(非广播)

(3).收到ARP应答后,系统的ARP缓存便会记录MAC-IP的对应信息(ARP攻击点),在CMD里打ARP -a便可查询现在机器的ARP缓存情况。现在IP数据报现在就可以传送了。

在ARP背后有一个基本概念,那就是网络接口有一个硬件地址(一个48bit的值,标识不同的以太网或令牌环网络接口)。在硬件层次上进行的数据帧交换必须有正确的接口地址。但是,TCP/IP有自己的地址:32 bit的IP地址。

知道主机的IP地址并不能让内核发送一帧数据给主机。内核(如以太网驱动程序)必须知道目的端的硬件地址才能发送数据。ARP的功能是在32bit的IP地址和采用不同网络技术的硬件地址之间提供动态映射。

值得注意:

ARP协议是不可靠和无连接的,通常即使主机没有发出ARP请求,也会接受发给它的 ARP回应,并将回应的mac和ip对应关系放入自己的ARP缓存中。此外,内核为2.4.x的linux系统在ARP实现中,考虑到了ARP欺骗,不会接受未经请求的ARP回应,因此直接向这种系统发送ARP reply也是无效的,不过,有意思的是虽然它不会接受未经请求的ARP reply,但是只要接收到ARP的request,它就会更新自己的ARP缓存。

网络协议基础:ARP简析相关推荐

  1. 计算机网络协议第一章,网络协议基础知识

    序    我计划开发一个系列专栏,将自己在网络方面的积累完善成一个系列知识,让读者的监督和拍砖督促自己并提高自己.如果在读本人的系列文章得到些许收获,那对我来说是更大的收获.    本系列的阅读应该不 ...

  2. TCP IP 网络协议基础入门

    文章目录 1 TCP IP 简介 2 链路层介绍 3 IP网际协议 4 网络层其他协议 5 传输层:UDP协议 6 传输层:TCP协议 7 应用层协议 每层承担的任务不一样,各层的协议的工作方式也不一 ...

  3. 浏览器原理及HTTP网络协议基础简答题

    ## 浏览器原理 **有兴趣读一下** 常⻅的浏览器内核有哪些? Trident (IE内核) Gecko(firefox) webkit(Safari) Chromium/Bink(chrome) ...

  4. 网络协议报文理解刨析篇二(再谈Http和Https), 加上TCP/UDP/IP协议分析(理解着学习), 面试官都惊讶你对网络的见解

    目录 前文链接(系列助学, 也为后文学习做铺垫, 可按需读取) 一. 再谈HTTP再理解 二. HTTP对比学习HTTPS HTTP和HTTPS的区别如下: 三.TCP协议  (三次握手四次挥手细节过 ...

  5. TCP/IP 网络协议基础入门

    文章目录 1.TCP/IP简介 IP 地址 域名 MAC 地址 端口号 封装和分用 2.链路层介绍 控制帧的传输 差错控制 反馈重发 计时器 序号 流量控制 以太网 PPP(点对点协议) SLIP 与 ...

  6. 网络协议基础知识大全

    网络协议 计算机网络体系结构 OSI七层模型 TCP/IP模型 ☆ TCP/IP协议族 TCP和UDP 地址和端口号 端口号的确定 端口号与协议 TCP/IP TCP三次握手 ☆ 三次握手的原因 TC ...

  7. 逻辑思维是运用计算机科学的基础概念,简析计算思维中的思维方式及思维本质...

    龙源期刊网 http://doc.docsou.com 简析计算思维中的思维方式及思维本质 作者:张菡 来源:<科学与财富>2020年第01期 摘要:计算思维是运用计算机科学的基础概念求解 ...

  8. 网络协议基础01-七层网络协议

    前言:为什么学? 1.避不开:几乎所有的程序运行都会涉及到网络协议 2.不过时:越基础知识越不容易过时,值得花时间深入学习和积累. 容器技术.大数据.云计算.人工智能.区块链...等技术更新迭代速度很 ...

  9. 网络协议基础:“工作中模模糊糊的概念,这次终于理顺了!”

    如何毁掉一个婴儿? 断了他的奶. 如何毁掉一个年轻人? 断了他的网. "网络之于年轻人,正如同奶水之于婴儿" 什么是网?什么是域名?什么是IP.Mac地址,端口号?什么是UDP?什 ...

  10. Retrofit网络请求框架使用简析——Android网络请求框架(四)

    题记:-- 很累,累到想要放弃,但是放弃之后将会是一无所有,又不能放弃, 唯有坚持,唯有给自忆打气,才能更勇敢的走下去,因为无路可退,只能前行, 时光一去不复返,每一天都不可追回,所以要更珍惜每一存光 ...

最新文章

  1. 《将要淘汰的八种人》读后感
  2. 求求你使用Tab键好吗
  3. HDOJ 1070 排序 水
  4. ny42 一笔画问题
  5. js字符串函数 [http://www.cnblogs.com/qfb620/archive/2011/07/28/2119799.html]
  6. 51nod 1562 玻璃切割 (STL map+一点点的思考)
  7. 微软:PHP在IIS 7上雄起
  8. 安卓的java无法访问网络_Android网络访问的基本方法
  9. hdu 5139 数据的离线处理
  10. Whistle抓包详细使用教程
  11. 概率算法/拉斯维加斯 蒙特卡洛 舍伍德算法
  12. 肯德尔相关系数计算方法
  13. 产业互联网将不再只是虚无缥缈,触不可及的空中楼阁
  14. re匹配截至到第一个中文_Python正则表达式:re模块常用方法详解
  15. 无需公网IP,在外远程访问NAS威联通QNAP【内网穿透】
  16. 前端文字下划线的模拟
  17. 必知的Python 五个精彩彩蛋
  18. python中traceback获取异常信息
  19. from . import *
  20. 大数据应用分析解决方案----图书出版

热门文章

  1. RabbitMQ原理讲解
  2. SpringCloud与dubbo的区别
  3. SpringBoot_入门-微服务简介
  4. android 字符串下标,android – 在TextView中为特定字符设置下标和上标?
  5. linux系统管理试卷必修B卷,2013-2014Linux系统管理试卷
  6. 关于navicat提权的方法
  7. 如何选择Web APP与Native App原生开发模式的区别(转)
  8. Xamarin.Form 初学 之 服务引用-WCF服务引用
  9. 将枚举类型的数据绑定到控件
  10. 中石油训练赛 - 奎奎发红包(贪心)