ARP 地址解析协议

目录

ARP(Address Resolution Protocol)

地址解析协议 ARP 的作用

ARP 高速缓存 (ARP cache)

ARP 工作过程

ARP 查找 IP 地址对应的 MAC地址

ARP 高速缓存的作用

不在同一局域网的两个主机运行ARP协议

使用 ARP 的四种典型情况

为什么要使用两种地址:IP 地址和 MAC 地址?

ARP报文格式

ARP请求包

ARP响应包

反向ARP

免费ARP

代理ARP


ARP(Address Resolution Protocol)

实现 IP 通信时使用了两个地址:

        IP 地址(网络层地址)和 MAC 地址(数据链路层地址)

地址解析协议 ARP 的作用

ARP (Address Resolution Protocol ) 作用: 从 IP 地址解析出 MAC 地址

即从网络层使用的 IP 地址,解析出在数据链路层使用的硬件地址。

ARP 高速缓存 (ARP cache)

·存放 IP 地址到 MAC 地址的映射表。

·映射表动态更新(新增或超时删除)。

映射表:

超过生存时间的项目都从高速缓存中删除,以适应网络适配器变化。

ARP 工作过程

当主机 A 欲向本局域网上的某个主机 B 发送 IP 数据报时,就先在其 ARP 高速缓存中查看有无主机 B 的 IP 地址。

        ·如有,就可查出其对应的硬件地址,再将此硬件地址写入 MAC 帧,然后通过局域网将该 MAC 帧发往此硬件地址。

        ·如没有, ARP 进程在本局域网上广播发送一个 ARP 请求分组。收到 ARP 响应分组后,将得到的 IP 地址到硬件地址的映射写入 ARP 高速缓存。

ARP 查找 IP 地址对应的 MAC地址

地址解析协议 ARP 要点

·本局域网上广播发送 ARP 请求(路由器不转发 ARP 请求)。

·ARP 请求分组:包含发送方硬件地址 / 发送方 IP 地址 / 目标方硬件地址(未知时填 0) / 目标方 IP 地址。

·单播 ARP 响应分组:包含发送方硬件地址 / 发送方 IP地址 / 目标方硬件地址 / 目标方 IP 地址。

·ARP 分组封装在以太网帧中传输

ARP 高速缓存的作用

·存放最近获得的 IP 地址到 MAC 地址的绑定。

·减少 ARP 广播的通信量。

·为进一步减少 ARP 通信量,主机 A 在发送其 ARP 请求分组时,就将自己的 IP 地址到 MAC 地址的映射写入 ARP 请求分组。

·当主机 B 收到 A 的 ARP 请求分组时,就将主机 A 的 IP 地址及其对应的 MAC 地址映射写入主机 B 自己的 ARP 高速缓存中。不必在发送 ARP 请求。

不在同一局域网的两个主机运行ARP协议

ARP 用于解决同一个局域网上的主机或路由器的 IP 地址和 MAC 地址的映射问题。

通信的路径:A → 经过 R1 转发 → B。

因此主机 A 必须知道路由器 R1 的 IP 地址,解析出其 MAC 地址。然后把 IP 数据报传送到路由器 R1。

使用 ARP 的四种典型情况

1.发送方是主机,要把 IP 数据报发送到本网络上的另一个主机。这时用 ARP 找到目的主机的硬件地址。

2.发送方是主机,要把 IP 数据报发送到另一个网络上的一个主机。这时用 ARP 找到本网络上的一个路由器的硬件地址。剩下的工作由这个路由器来完成。

3.发送方是路由器,要把 IP 数据报转发到本网络上的一个主机。这时用 ARP 找到目的主机的硬件地址。

4.发送方是路由器,要把 IP 数据报转发到另一个网络上的一个主机。这时用 ARP 找到本网络上另一个路由器的硬件地址。剩下的工作由这个路由器来完成。

为什么要使用两种地址:IP 地址和 MAC 地址?

·不同使用不同的 MAC 地址。MAC 地址之间的转换非常复杂。

·对以太网 MAC 地址进行寻址也是极其困难的。

·IP 编址把这个复杂问题解决了。

        ·连接到互联网的主机只需各自拥有一个唯一的 IP 地址,它们之间的通信就像连接在同一个网络上那样简单方便,即使必须多次调用 ARP 来找到 MAC 地址,但这个过程都是由计算机软件自动进行的,对用户来说是看不见的。

·因此,在虚拟的 IP 网络上用 IP 地址进行通信非常方便。

ARP报文格式

ARP请求包

ARP响应包

反向ARP

·根据MAC学习IP。

免费ARP

(1)免费ARP指主机发送ARP查找自己的IP地址。
(2)通常发生在系统引导期间进行接口配置时。
(3)与标准ARP的区别就是免费ARP分组的目的IP地址字段封装的是自己的IP地址
    (即向所在网络请求自己的MAC地址)。
(4)免费ARP可以用来探测IP地址是否冲突:

代理ARP

代理ARP就是通过使用一个主机(通常为router),来作为指定的设备使用自己的 MAC 地址来对另一设备的ARP请求作出应答。

·位于不同网络的网络的网络设备在不同配置网关情况下,能够通过ARP代理实现相互通信。

欢迎一起学习~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/438485.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

非遗拓印为山区老人送去爱的礼物

非遗年画是中国的传统艺术,年画反映了中国自古以来的风俗和信仰,寄托着人们对未来的希望,2024年1月27日,100位志愿者齐聚大坪大融城,学习制作非遗年画,为给山区老人捐赠新年“爱的礼物”。 本次活动由大坪…

项目实现网页分享QQ空间功能

文章目录 🐒个人主页🏅Vue项目常用组件模板仓库📖前言:🎀源码如下: 🐒个人主页 🏅Vue项目常用组件模板仓库 📖前言: 本篇博客主要提供“点击转发按钮&#x…

【qt】switchBtn

方法1 在qtdesigner中设置按钮图标的三个属性,normal off 、normal on和checkabletrue。 from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * from PyQt5 import uic from switchBtn import Ui_Dialogclass Test(QDialog, Ui_…

Deepin基本环境查看(七)【任务管理器和进程管理】

Deepin基本环境查看 - 目录Deepin基本环境查看(一)【基本信息】Deepin基本环境查看(二)【内存】Deepin基本环境查看(三)【网络信息】Deepin基本环境查看(四)【硬盘/分区、文件系统、…

数据脱敏实现:“想在哪脱就在哪脱,想脱谁就脱谁! ! !“

1.背景 在当下互联网高速发展的时代下,涉及到用户的隐私数据安全越发重要,一旦泄露将造成不可估量的后果。所以现在的业务系统开发中都会对用户隐私数据加密之后存储落库,同时还要求后端返回数据给前台之前进行数据脱敏。所谓脱敏处理其实就…

Virtual Assistant for Smartphone;Denoising Autoencoder;CrossMAE

本文首发于公众号:机器感知 Virtual Assistant for Smartphone;Denoising Autoencoder;CrossMAE The Case for Co-Designing Model Architectures with Hardware While GPUs are responsible for training the vast majority of state-of-t…

探索比特币的区块和交易体结构

一、区块结构 Block #476060 一个高度为476060的块,区块高度从 1 开始,依次累加 Number Of Transactions 1757 表示这个区块中的交易记录总数 Output Total 14663.80477993 BTC 本区块的输出总金额 Estimate…

arcgis 批量删除字段

一、打开ArcToolbox-数据管理工具-字段-删除字段。 二、在输入表中选择要删除字段的要素,在删除字段栏中选择要删除的字段,点击确认即可。

Swift 周报 第四十六期

文章目录 前言卖不动了?iPhone 15 系列跌破 5000 元大关StoreKit 和审核指南更新将你的 App 提交到 Apple Vision Pro 的 App Store 提案通过的提案 Swift论坛推荐博文话题讨论关于我们 前言 本期是 Swift 编辑组整理周报的第四十六期,每个模块已初步成…

抖音信息流广告怎么设置加粉回传?-数灵通

在数字化营销的今天,企业微信已成为了企业与客户间的重要桥梁。而抖音信息流广告,作为一种高效的引流方式,能帮助企业迅速找到目标客户。那么,如何通过设置加粉回传,快速捕获需求客户呢?接下来,…

Element table组件内容\n换行

漂亮的页面总是让人心旷神怡,层次清晰的页面让用户操作起来也是易于上手及展示。 如下的页面展示就是非常low的:用户根本阅读其中的数据。 在这个页面,根据用户填写过程生成多次填写记录,如果不进行层次性的展示,数据…

APEX开发过程中需要注意的小细节

不积小流无以成江海,不积跬步无以至千里,Oracle APEX开发过程中有很多小细节,自己记录的同事也分享给大家希望能有所助益。 【问题记录】明明一条数据都没有而且还取消勾选选中第一行了,可还是会展示勾选,这是怎么回事…