ARP的具体过程和ARP欺骗

目录

1.什么是ARP

2.ARP的作用

3.ARP的具体过程

[场景 1:同一局域网内通信](#场景 1:同一局域网内通信)

[场景 2:跨网段通信](#场景 2:跨网段通信)

[关键细节:ARP 缓存的老化机制](#关键细节:ARP 缓存的老化机制)

4.ARP欺骗

核心原理

两种常见攻击场景

主机欺骗(欺骗目标主机):

网关欺骗(欺骗整个局域网):

攻击危害


1.什么是ARP

ARP 是局域网内的地址解析协议,核心作用是将网络层的 IP 地址翻译成数据链路层的 MAC 地址,因为局域网内数据帧传输依赖 MAC 地址,而设备之间只知道目标 IP,需要 ARP 完成映射。

2.ARP的作用

网络分层模型中,IP 地址用于跨网段的 "路由寻址"(比如从你的电脑到游戏服务器),但数据包在同一局域网内传输时(比如电脑到路由器、路由器到同网段其他设备),数据链路层需要通过MAC地址识别物理设备。

问题:IP 地址是逻辑地址,MAC 是物理地址,设备之间只知道目标 IP,不知道对应的 MAC,无法直接发送数据帧 ------ARP 的核心作用就是解决这个 "地址翻译" 问题。

3.ARP的具体过程

  • 硬件类型指链路层网络类型,1为以太网;
  • 协议类型指要转换的地址类型,0x0800为IP地址;
  • 硬件地址长度对于以太网地址为6字节;
  • 协议地址长度对于和IP地址为4字节;
  • op字段为1表示ARP请求,op字段为2表示ARP应答。

ARP 的工作过程核心是 " 广播请求、单播应答**"**,结合 ARP 缓存表优化性能,分 "同一局域网" 和 "跨网段" 两种场景:

场景 1:同一局域网内通信

假设:

  • 电脑 A(源):IP=192.168.1.10,MAC=AA:AA:AA:AA:AA:AA
  • 电脑 B(目标):IP=192.168.1.11,MAC=BB:BB:BB:BB:BB:BB(A 未知)
  • 局域网内其他设备:电脑 C、路由器 R

步骤拆解:

  1. 检查 ARP 缓存表:电脑 A 先查询本地 ARP 缓存(系统维护的 "IP-MAC 映射表"),看是否已有 192.168.1.11 对应的 MAC 地址;
    • 若有:直接使用该 MAC 封装数据帧,发送给电脑 B(无 ARP 交互);
    • 若无:进入 ARP 解析流程。
  2. 发送 ARP 广播请求:电脑 A 发送一个 以太网广播帧(目标 MAC=FF:FF:FF:FF:FF:FF),帧内携带 ARP 请求包,内容为:"谁是 192.168.1.11?请告诉我你的 MAC 地址,我的 IP 是 192.168.1.10,MAC 是 AA:AA:AA:AA:AA:AA"。局域网内所有设备(电脑 B、C、路由器 R)都会接收该帧,但只有目标 IP(192.168.1.11)对应的电脑 B 会响应,其他设备忽略。
  3. 发送 ARP 单播应答:电脑 B 接收后,提取电脑 A 的 IP 和 MAC,更新自己的 ARP 缓存表(添加 A 的映射),然后发送单播帧(目标 MAC=AA:AA:AA:AA:AA:AA),携带 ARP 应答包,内容为:"我是 192.168.1.11,我的 MAC 是 BB:BB:BB:BB:BB:BB"
  4. 更新 ARP 缓存:电脑 A 接收应答后,更新自己的 ARP 缓存表(添加 192.168.1.11→BB:BB:BB:BB:BB:BB 的映射),后续通信直接使用该缓存。

场景 2:跨网段通信

核心差异:跨网段时,电脑 A 的目标 IP 是服务器 S(比如 203.0.113.10),但局域网内无法直接解析 S 的 MAC,此时 ARP 解析的目标是 网关(路由器)的 MAC 地址:

  1. 电脑 A 判断目标 IP(203.0.113.10)不在同一网段,将数据包转发给网关(比如路由器 IP=192.168.1.1);
  2. 电脑 A 通过 ARP 解析网关的 IP(192.168.1.1)对应的 MAC 地址;
  3. 将数据包封装为目标 MAC = 网关 MAC 的帧,发送给网关;
  4. 网关接收后,转发到外网,后续由外网路由器继续寻址(无需电脑 A 参与 ARP 解析)。
关键细节:ARP 缓存的老化机制
  • ARP 缓存表中的条目有 超时时间(默认一般 10-60 秒,可配置),超时后自动删除;
  • 目的:避免设备 IP 变更后,缓存的旧映射导致通信失败(比如电脑 B 更换 IP 后,A 的旧缓存会失效,需重新解析)。

4.ARP欺骗

核心原理

ARP 协议是 无状态协议(不验证请求 / 应答包的真实性),攻击者通过伪造 ARP 应答包,篡改目标设备的 ARP 缓存表,将合法的 IP-MAC 映射替换为攻击者的 MAC 地址,从而劫持流量或中断通信。

两种常见攻击场景

主机欺骗(欺骗目标主机):

  • 攻击者伪造 "目标 IP→ 攻击者 MAC" 的 ARP 应答包,发送给受害者电脑;
  • 受害者的 ARP 缓存被篡改,后续发往目标 IP的数据包会被转发到攻击者设备(攻击者可监听、篡改数据,或转发给真实服务器完成 "中间人攻击")。

网关欺骗(欺骗整个局域网):

  • 攻击者伪造 "网关 IP(比如 192.168.1.1)→ 攻击者 MAC" 的 ARP 应答包,发送给局域网内所有设备;
  • 所有设备的网关 MAC 被篡改,对外网的所有流量(比如登录、数据上传)都会经过攻击者设备,导致全网断网或流量劫持。

攻击危害

  • 断网:攻击者不转发流量,导致受害者无法连接网关或目标设备;
  • 流量监听:窃取账号密码、聊天记录等敏感数据;
  • 中间人攻击:篡改数据或植入恶意代码。
相关推荐
A小辣椒1 天前
TShark:Wireshark CLI 功能
linux
A小辣椒1 天前
TShark:基础知识
linux
AlfredZhao1 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao2 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334662 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪2 天前
linux 拷贝文件或目录到指定的位置
linux
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
bush43 天前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行5203 天前
Linux 11 动态监控指令top
linux