地址解析协议 (ARP)

2023-11-03

地址解析协议(ARP)是互联网协议(IP)套件的关键第 2 层协议,可将 IP 地址转换为媒体访问控制(MAC)地址(IP – MAC),ARP 在实现网络连接方面发挥着不可或缺的作用,能够发现本地网络上设备的硬件地址并将其映射到其 IP 地址。

什么是地址解析协议(ARP)

将数据链路层IP地址解析为物理层MAC地址,ARP协议被几个网络组件用来根据指定的IP来确定目标网络设备。ARP 可用于发现与发送方位于同一网络上的设备的 MAC 地址。虽然它有助于解析物理层地址,但 ARP 在开放系统互连(OSI)模型的第 2 层运行,即数据链路或网络层。

什么是网络中的 ARP

地址解析协议 (ARP) 是一种网络协议,用于将物理地址(也称为 MAC 地址)映射到计算机网络中的 IP 地址。它是TCP / IP协议套件的关键部分,因为它支持网络上的设备之间的通信。

地址解析协议有什么作用

地址解析协议 (ARP) 允许主机设备确定同一网络上另一台设备的 MAC 地址。

每当主机设备想要将数据包发送到网络上的另一个主机设备时,它都会检查 ARP 缓存以查看它是否已经知道目标的 MAC 地址。如果 MAC 地址不在缓存中,则主机设备会发送 ARP 请求数据包,要求提供 MAC 地址。ARP 请求数据包将广播到网络上的所有设备。当设备的 IP 地址匹配时,它会发送包含其 MAC 地址的 ARP 回复数据包。主机设备将此信息添加到 ARP 缓存中,并在下次使用它进行通信。

为什么地址解析协议很重要

地址解析协议 (ARP) 在网络中至关重要,使用原因如下:

  • 将 IP 地址映射到 MAC 地址:要使设备将数据发送到同一网络上的另一台设备,它必须知道目标设备的 MAC 地址。ARP 协议将 IP 地址映射到目标设备的 MAC 地址。
  • 设置 ARP 缓存:ARP 缓存将 IP 地址的映射数据和网络上设备的相应 MAC 地址存储在表中。ARP 请求会定期广播以更新此数据表。这有助于减少网络流量并加快网络设备之间的通信。
  • 排查网络问题:ARP 缓存可用于通过检查 MAC 地址是否正确链接到其相应的 IP 地址来检测和解决网络连接问题。

因此,ARP对于实现网络上设备之间的通信和确保网络效率至关重要。

ARP 如何工作

在这里插入图片描述

IP – MAC 相关详细信息构成了在不同组件之间启用网络通信的基础。当网络设备需要向目标设备发送数据包时,它需要目标设备的 MAC 地址。

设备首先检查其 ARP 缓存,以检查它是否具有目标设备的 MAC 地址,如果找到目标设备的 IP – MAC 关联详细信息,设备将使用此详细信息与目标设备建立通信。

如果未找到目标设备的 IP – MAC 关联详细信息,则设备应首先标识目标设备的 MAC 地址。为此:

  • 希望建立通信的设备在网络中广播ARP请求数据包,请求具有指定IP地址的设备的MAC地址。
  • ARP 请求数据包包含目标设备的 IP 地址和发送设备的 MAC 地址。
  • 在收到 ARP 请求广播数据包时,网络设备会将数据包中的 IP 地址与自己的 IP 地址进行比较。
  • 然后,IP 地址与 ARP 请求中的 IP 匹配的设备向请求设备发送 ARP 回复数据包。ARP 回复数据包包含发送回复的设备的 MAC 地址。
  • 请求设备在收到包含 IP – MAC 关联详细信息的 ARP 回复数据包后,使用此信息将数据直接发送到目标设备。

ARP 缓存及其在 IP 地址管理 (IPAM) 中的作用

如前所述,网络设备依靠其 ARP 缓存来识别 IP-MAC 关联并转发数据包。每个网络设备(包括路由器和交换机)都维护一个 ARP 缓存,该缓存记录其网络中最近的 ARP 请求和已识别的 IP-MAC 关联的列表。

ARP 缓存通过最大限度地减少频繁通信的设备在网络上广播 ARP 的需求,有助于加快未来的 ARP 查找和 ARP 请求。ARP 缓存条目通常包含设备的 IP 地址和 MAC 地址,以及上次使用该条目时的时间戳。随着网络的动态变化,为了避免过时或过时的条目,ARP 缓存将被定期清除。

ARP 和 IPAM

ARP不是一个平台,而是一个用于网络的协议。以下是一些在网络中使用 ARP 的平台:

  • 网络交换机
  • 恶意检测和安全工具
  • 网络监控工具
  • IP 地址管理工具

了解一下IP 地址管理解决方案如何使用 ARP:

有效的 IP 地址管理器依赖于跟踪网络中最新的 ARP 缓存或表。这对于维持高效的网络操作至关重要,因为依赖过时的 ARP 缓存可能会导致网络性能缓慢等问题。因此,以下是网络管理员需要确保的一些 ARP 解决方案:

  • ARP 缓存会定期清除或使用最新信息进行更新。
  • 部署的 IPAM 工具配置为监视可靠的 ARP 数据源,以实时收集和更新 IP 地址详细信息。

通过将 IP 地址管理工具与 ARP 缓存管理集成,网络管理员可以更全面地了解网络层及其 IP-MAC 关联。IPAM 解决方案可以提供对 ARP 缓存的实时可见性,使管理员能够快速识别和解决问题。

此外,利用 ARP 缓存深入了解网络中的实时 IP – MAC 关联可以帮助管理员避免 IP 地址冲突和子网过度使用等问题。

ARP 中毒

在这里插入图片描述

ARP 缓存中毒(也称为 ARP 欺骗或 ARP 中毒)是一种用于通过操纵目标设备的 ARP 缓存来拦截网络流量的技术。为了执行 ARP 中毒,攻击者在检测到 ARP 请求广播时,会以 MAC 地址与请求的 IP 地址相关联为借口,发送包含其 MAC 地址的 ARP 回复。目标设备在收到此 ARP 回复后,使用恶意 IP – MAC 关联详细信息更新其 ARP 缓存。然后,目标设备会将数据包发送到攻击者的 MAC 地址,允许攻击者拦截和修改数据包。

  • ARP 中毒通常会导致进一步的复杂攻击。支持 BYOD 策略、IoT 和影子 IT 的网络应谨慎行事,因为流氓设备可以使用 ARP 中毒轻松地对这些技术进行网络攻击。
  • 以受信任用户设备为借口进入网络的流氓设备可以使用 ARP 中毒来拦截网络流量并运行多种复杂的攻击,包括中间人攻击、数据盗窃和恶意软件摄取。
  • 此外,通过使用 ARP 缓存中毒,攻击者可以将网络流量重定向到他们控制的恶意设备,而不是允许流量到达其预期目标。然后,此流氓设备可用于发起各种攻击,例如窃听、数据盗窃和拒绝服务攻击。
  • 例如,攻击者可以使用 ARP 中毒来拦截和修改客户端设备和服务器之间的网络流量。攻击者可以通过发起中间人攻击将流量重定向到他们控制的流氓设备。客户端设备和服务器不知道这种纵的流量,并且可以通过恶意设备运行机密数据请求。
  • 鉴于其对网络完整性和安全性的严重威胁,识别和防止 ARP 欺骗至关重要。网络管理员必须部署可靠的 ARP 欺骗检测和预防工具,以发现异常的 ARP 活动并缓解 ARP 欺骗。

了解 IP 地址空间

OpUtils是一个全面的 IP 地址管理解决方案,提供高级功能来帮助您有效地管理网络地址空间。借助OpUtils对网络ARP日志的高级IP扫描和IP跟踪,管理员可以轻松实时管理IP地址,子网和DHCP服务器范围,并监控网络是否存在潜在问题。

它的流氓检测和预防模块可轻松检测和删除流氓设备,防止它们访问您的网络。除了限制对网络的恶意访问外,OpUtils 还使您能够实时检测 ARP 欺骗攻击,并接收有助于即时缓解ARP中毒的警报。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

地址解析协议 (ARP) 的相关文章

  • Linux使用原始套接字从链路层开始封包组包(ARP请求与应答)

    数组方式封包 span class token macro property span class token directive hash span span class token directive keyword include s
  • 修改数据包欺骗服务器,关于arp欺骗修改数据包

    2013 8 21 11 06 Wednesday关于arp欺骗修改数据包 事情是这样的 现在有一款XO软件运行在好多个客户端上 xff0c 客户端会不定时向服务端提交数据 xff0c 走http协议 xff0c POST提交 比如提交的地
  • Linux上ARP表,路由表的解释

    为厘清数据在网络中的传输流向和具体的实现过程 xff0c 现对ARP表 xff0c 路由表进行学习如下 ARP xff08 Address Resolution Protocol xff09 地址解析协议 IP数据包经常通过以太网进行发送
  • 【笔记】openwrt - full cone NAT(全锥NAT)、解决“arp_cache: neighbor table overflow!”

    最近安装了比特彗星 xff08 bitcomet xff09 后 xff0c 老是收到警告说日志的接收超过每秒上限了 一看日志 xff0c 好家伙 xff0c 一堆的kern info kernel 194004 157620 neighb
  • arp欺骗

    ARP工作的过程 原理及现象 ARP全称是地址解析协议 xff08 address resolution potocol xff09 xff0c 是在仅仅知道主机的IP地址时确定其物理的地址的一种协议 ARP协议的工作过程 场景 xff1a
  • ARP攻击代码(ARP欺骗)

    一 ARP攻击 ARP欺骗攻击原理 xff1a ARP欺骗攻击建立在局域网主机间相互信任的基础上的 比如 xff1a 假设A B C在同一个局域网中 xff0c 网关为192 168 43 1 xff0c IP地址和MAC地址分别假设如下
  • WinPcap实战(一)——发送ARP包

    ARP包的结构 ARP包格式 物理帧头 14B ARP帧结构 28B 填充数据 18B CRC 4B 这里给出一张图 图中没有18字节的填充数据和4字节的校验位 物理帧头 14B 目的MAC 6B 源MAC 6B 类型 2B ARP帧 0x
  • linux原始套接字-发送ARP报文

    linux原始套接字 可以直接发送和接收链路层和网络层的报文 对我们理解TCP IP协议栈有很多帮助 也可写出很多有趣的程序 下面的例子是向192 168 1 60的电脑 发送伪造的ARP报文 使其更新ARP表 导致无法PING通192 1
  • 以太网ARP测试实验

    1 1 ARP测试整体框架 当上位机发送ARP请求时 FPGA返回ARP应答数据 当按下FPGA的触摸按键时 FPGA发送ARP请求 上位机返回ARP应答数据 PLL时钟对eth rxc的输入时钟进行相位调整 GMII TO RGMI 模块
  • ARP(地址解析协议)协议和RARP协议(逆地址解析协议)

    ARP协议 地址解析协议 及ARP 是根据IP地址获取物理地址的一个TCP IP协议 主机发送信息是将包含将包含目标IP地址的APR请求广播到局域网络上的所有主机 并接收返回消息 以此确定目标的物理地址 受到返回消息的时候将IP地址和物理地
  • ARP协议和攻击原理

    转自 https blog 51cto com 13570193 2083332 ARP 在TCP IP协议栈中 最不安全的协议莫过于ARP了 我们经常听到的网络扫描 内网渗透 流量欺骗等等 他们基本上都与ARP有关系 甚至可以说 他们的底
  • openwrt利用arp获取局域网设备IP

    openwrt利用arp获取局域网设备IP 文章目录 openwrt利用arp获取局域网设备IP 1 前言 2 ARP概念 3 arp局域网搜索设备实现思路和代码 1 前言 目前我们通过arp协议搜索局域网设备 根据局域网设备地址判断子设备
  • 在linux下如何查看局域网的所有主机的ip地址

    策略 用nmap对局域网扫描一遍 然后查看arp缓存表就可以知道局域内ip对应的mac了 nmap比较强大也可以直接扫描mac地址和端口 执行扫描之后就可以 cat proc net arp查看arp缓存表了 或者使用命令arp a 参考
  • 如何从远程主机的以太网地址获取其IP地址?

    我正在寻找一些 Linux 代码来从以太网地址查找 IP 地址 我想我必须做一些反向 A RP 欺骗 但我没有找到任何例子 http compnetworking about com od networkprotocolsip f conv
  • 如何在C#中获取外部IP的mac地址

    如何在C 中获取外部IP的mac地址 例如我想找到 204 13 153 34 的mac地址 任何想法和代码片段都受到高度赞赏吗 提前致谢 您应该阅读有关地址解析协议的内容 您无法确定不同网段中机器的 MAC 地址 如果机器恰好位于同一网段
  • Android API级别30,无法再从Android arp表获取wifi网络设备MAC地址

    我有一个小型网络扫描仪应用程序 它需要查找响应 ping 等的扫描设备的 MAC 地址 很快 Google 需要 targetSdkVersion 30 这意味着在没有响应的情况下无法再以任何方式访问 arp 表 没有权限 以前我用过 bu
  • 在 Linux 上嗅探数据包时过滤网络堆栈中的数据包?

    我有一个问题要问底层网络 Linux 专家 我必须为我大学的安全项目构建两个工具 第一个工具是 ARP 中毒攻击者 它会毒害远程主机的 ARP 缓存 以便检索他发送到另一台主机的数据 我使用原始套接字用 C 语言编写了这个工具 它工作得很好
  • 在 Linux 上使用 C++ 将 MAC 地址解析为 IP 地址

    我需要生成一个包含目标 MAC 地址的以太网标头 因为 libnfnetlink 在预路由发生之前仅提供 IP 标头 传出接口号也是已知的 因此可以在正确的网络中进行查找 从 IP 地址解析 MAC 地址的库 函数是什么 目前还不清楚为什么
  • 为什么 Linux TAP 设备不处理 ARP 或 ICMPv6 数据包

    我正在使用以下命令打开 TAP 设备 p gt fd open dev net tun O RDWR skipping error handling code ifr ifr flags IFF TAP IFF ONE QUEUE IFF
  • 在 Linux 2.6.21 (glibc 2.3.5) 上进行 ARP 和反向 ARP

    我需要在任意 IP 网络上存储对第三方设备的持久引用 其中设备的 IP 地址可能是静态的或由 DHCP 随机分配 我不控制网络上的设备 也不能依赖 DNS 和其他现有的或与设备一起使用的临时网络协议 所以我被指示使用硬件地址和 ARP 进行

随机推荐

  • 个人信息可携带权的中国路径(线上)研讨会

    个人信息保护法 将于今年11月1日正式实施 其中首次提出了个人信息可携带权的相关法条 体现了将个人信息权利还于个人的立法思路 也为进一步释放数据要素生产力带来了新的历史机遇 为深入了解个人信息可携带权在全球范围的发展及在中国的可行落地路径
  • lstm(三) 模型压缩lstmp

    lstmp结构 对于传统的lstm而言 i t W i
  • Linux专栏(二):创建虚拟机与Ubuntu安装

    文章目录 1 下载Ubuntu20 04镜像 2 创建虚拟机 3 安装Ubuntu系统 本文将介绍在VMware中如何创建虚拟机并安装Ubuntu20 04系统 1 下载Ubuntu20 04镜像 下载地址 Ubuntu官网镜像下载 2 创
  • 复旦NLP团队发布80页大模型Agent综述,一文纵览AI智能体的现状与未来

    来源 机器之心 智能体会成为打开 AGI 之门的钥匙吗 复旦 NLP 团队全面探讨 LLM based Agents 近期 复旦大学自然语言处理团队 FudanNLP 推出 LLM based Agents 综述论文 全文长达 86 页 共
  • block(块),page(页),buffer cache(块缓冲)区别与联系

    在自己的理解里 块就是用来管理磁盘空间的 就像我们在给一个磁盘建立文件系统时候 我们可以指定block size 而页是针对内存管理 例如从磁盘读出的数据就缓存在内存页中 但突然对关buffer cache block buffer 这些东
  • vue项目实现搜索功能

    使用vue框架实现以下要求 1 点击 首页 顶部搜索框 通过路由跳转到搜索页 并实现关键字模糊搜索功能 2 搜索页和首页下面用到的JSON数据自行模拟 并正确搜索渲染出来 3 在搜索页保留每次的搜索历史关键字 在搜索页的 历史搜索 中显示出
  • 微信小程序wx.request 使用 post方式传参

    参考网址 https blog csdn net lengxin337 article details 78234503 重点注意 method 是 get 方式的时候 header为 Content Type application js
  • 产品不快,你就死定了!

    作者碎碎念 创业团队做产品要拼迭代速度 天下武功 唯快不破 扎克伯格说 不酷 你就死定了 我要套用他的话说 不快 你就死定了 因为太阳底下没有新鲜事 聪明人辣么多 凭空想出一个绝世好点子 你没戏的 但是 发现别人做得不足的地方 再迅速赶超
  • java.net.SocketException:Connection reset

    背景 HttpClient远程调用HTTPS的API时 报错java net SocketException Connection reset 原因 Jdk版本差异导致的异常 由于Jdk1 7默认的是TLS的协议版本是v1 0 而Jdk1
  • C++工厂模式总结-简易版反射

    设计模式之factory method与c 反射 记我曾经的误解 Factory Method的官方解释是 Define an interface for creating an object but let subclasses deci
  • c++ 拷贝构造函数_C++构造函数总结

    最近在找工作 比较忙 所以没有时间写文章了 找了一段时间了 还是没有什么收获 找工作给我一个最大的体会就是 基础要扎实 代码能力要强 这里的代码不是指那种业务逻辑的代码哦 01 文章概要 这篇文章总结一下C 中的构造函数 然后自己实现一个M
  • SQL Server 数据库——第三章课后题

    习题 3 SQL表达式 4 SQL语句建立第2章习题6中4个表 5 针对习题4中的4个表试用SQL完成以下各项操作 9 请为三建工程项目建立一个供应情况的视图 心得 3 SQL表达式 SELECT FROM S WHERE A 10 SEL
  • IPv6 vs IPv4使用差异说明

    1 IPv6 vs IPv4使用差异说明 1 1 约束限制 chrony支持全局地址 global address 不支持链路本地地址 link local address Firefox支持通过http https协议访问全局地址 glo
  • 微信分享链接出现config:invalid signature错误的解决方法

    当开发微信时需要做特定的页面做分享时 根据官方提供的jssdk php文件创建的签名数据包调试时 大家碰到的最多的错误而且解决最麻烦的大概就是signature错误了 如下图 分享时提示错误 errMsg config invalid si
  • JSP中的内置对象pageContext的作用

    1 当作当前页面域对象使用 2 可以获取到jsp中其他8个内置对象 jsp中其实可以直接用其他内置对象 但再el表达式中可以尝试使用 因为request response session servletContext servletConf
  • 小程序-报错 xxx is not defined (已解决)

    小程序 报错 xxx is not defined 已解决 问题情境 这样一段代码 微信的小程序报错 is not defined 我 wxml 想这样调用 wxml 代码
  • 力扣每日一题【用户分组】

    题目链接 用户分组 视频连接 用户分组 C 代码 class Solution public vector
  • CTO六大能力模型

    一个公司的CTO面临着许多难题和尴尬处境 他们整天忙得焦头烂额 跟CEO肩并肩共同应对各种困难 他们跟其它高管紧密配合 提供强大的技术后盾 他们不断学习新技术 制定符合企业的技术战略 想要成为一名优秀的CTO 究竟要具备哪些方面的能力素质
  • 如何评估大型语言模型(LLM)?

    编者按 近期几乎每隔一段时间 就有新的大语言模型发布 但是当下仍然没有一个通用的标准来评估这些大型语言模型的质量 我们急需一个可靠的 综合的LLM评估框架 本文说明了为什么我们需要一个全面的大模型评估框架 并介绍了市面上这些现有的评估框架
  • 地址解析协议 (ARP)

    地址解析协议 ARP 是互联网协议 IP 套件的关键第 2 层协议 可将 IP 地址转换为媒体访问控制 MAC 地址 IP MAC ARP 在实现网络连接方面发挥着不可或缺的作用 能够发现本地网络上设备的硬件地址并将其映射到其 IP 地址