当前位置: 首页 > news >正文

05.《ARP协议基础知识探秘》

ARP协议基本介绍与实践

文章目录

ARP概述

作用:ARP(Address Resolution Protocol,地址解析协议)用于根据目标设备的 IP 地址,解析出其对应的 MAC 地址,以实现局域网内的数据帧传输。简单来说,ARP 就像网络世界里的 “问路向导”。当设备(比如电脑、手机)想和另一个设备通信时,虽然知道对方的 IP 地址(就像知道对方的门牌号),但还需要知道对方的 MAC 地址(相当于对方的 “物理标识”)才能发送数据。ARP 的作用就是根据已知的目的 IP 地址,找到对应的 MAC 地址。

ARP报文类型

ARP工作过程解析

ARP 通过两种报文完成地址解析,整个过程可以分为 “询问” 和 “回应” 两步:

请求报文(ARP Request)

  • 发送方式:广播(可以理解为 “大声喊话”,同一网络内的所有设备都能收到)。
  • 目的 MAC 地址:固定为ffff-ffff-ffff(这是广播 MAC 地址,代表发给所有人)。
  • 作用:比如设备 (PC1) 想找 IP 为 10.1.1.2 的设备,就会发送请求:“谁的 IP 是 10.1.1.2?请告诉我你的 MAC 地址!”

回复报文(ARP Reply)

  • 发送方式:单播(相当于 “悄悄话”,只发给发出请求的设备)。
  • 作用:当 IP 为 10.1.1.2 的设备 (PC2) 收到请求后,会单独回复设备 A:我的 IP 是 10.1.1.2,MAC 地址是 xx:xx:xx:xx:xx:xx

ARP工作原理示意图

拓扑图:

image-20250830201655385

抓包查看报文

image-20250830204301709

image-20250830204314694

无故ARP/免费ARP

原理:设备在配置或使用某个IP地址之前,会向网络中广播一个发送无故ARP请求报文,该报文中目标IP地址与源IP地址相同,用于检测IP地址是否冲突。如果收到reply回复,说明地址已经被使用;如果未收到reply回复,说明地址没有被使用。

抓包图例

image-20250830204555708

实验案例

实验目标

通过抓包工具观察 ARP 请求与回复过程,理解无故 ARP 的冲突检测机制。

实验环境
  • 两台处于同一局域网的计算机
  • Wireshark 或类似网络抓包工具
实验步骤
  1. 开启抓包:在主机A上启动 Wireshark,选择正确的网络接口,开始抓包。
  2. 触发 ARP 请求:在主机A上 ping 主机B的 IP 地址(如 ping 192.168.1.2),触发 ARP 解析过程。
  3. 观察 ARP 报文:在抓包结果中过滤 arp,查看 Request 和 Reply 报文。
  4. 模拟无故 ARP:在主机A上执行以下命令(以 Windows 为例):
arp -d *   // 清除ARP缓存,清除所有 ARP 缓存条目。
ping 192.168.1.1   // 向目标 IP 发送 ICMP 请求,若 ARP 缓存中无对应 MAC,则会先发起 ARP 请求。

5.分析结果:观察是否有无故 ARP 报文发出,并注意是否有冲突回复。

如涉及版权问题,请联系作者处理!!!

http://www.dtcms.com/a/358803.html

相关文章:

  • 构建AI智能体:十八、解密LangChain中的RAG架构:让AI模型突破局限学会“翻书”答题
  • 银河麒麟V10(Phytium,D2000/8 E8C, aarch64)开发Qt
  • 魔方的使用
  • 进制转换问题
  • 【车载开发系列】CAN与CANFD上篇
  • 前端代码结构详解
  • Python数据处理
  • 6.1 Update不能写复杂的逻辑
  • ReconDreamer
  • 前端浏览器调试
  • Python爬虫实战:构建Widgets 小组件数据采集和分析系统
  • Apple登录接入记录
  • Spring AI 的应用和开发
  • 突发,支付宝发布公告
  • GitHub 热榜项目 - 日榜(2025-08-30)
  • Unity笔记(八)——资源动态加载、场景异步加载
  • DbVisualizer:一款功能强大的通用数据库管理开发工具
  • 自动修改psd_生成套图 自动合并图片 自动生成psd文字层
  • Go 语言面试指南:常见问题及答案解析
  • 【具身智能】【机器人动力学】台大林佩群笔记-待持续更新
  • 索引结构与散列技术:高效数据检索的核心方法
  • HTS-AT模型代码分析
  • Shell脚本编程入门:从基础语法到流程控制
  • 本地运行 Ollama 与 DeepSeek R1 1.5B,并结合 Open WebUI 测试
  • 告别图片处理焦虑:用imgix实现智能、实时且高效的视觉媒体交付(含案例、截图)
  • Linux shell命令扩涨
  • HarmonyOS Router 基本使用详解:从代码示例到实战要点
  • 免费开源的 Gemini 2.5 Flash 图片生成器
  • Robolectric如何启动一个Activity
  • Coze源码分析-API授权-删除令牌-后端源码