CBA
arp(一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂)

在讲具体类型前,我们先用一张“脑补图”把 ARP 的位置定清楚。

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

ARP 的位置

ARP 的工作,就是在“IP 世界”和“MAC 世界”之间做翻译。

没有 ARP,IP 地址就只是个“逻辑标签”,没法真正发到网线上。

标准 ARP 的完整流程

我们先用一张最经典的 ARP 通信图,把基础打牢。

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

ARP 通信图

场景假设

  • 主机 A:
  • IP:192.168.1.10
  • MAC:AA-AA-AA-AA-AA-AA
  • 主机 B:
  • IP:192.168.1.20
  • MAC:BB-BB-BB-BB-BB-BB
  • 同一局域网

ARP 请求(广播)

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

特点:

  • 二层广播
  • 所有设备都能收到
  • 只有目标 IP 才会回应

ARP 响应(单播)

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

ARP 表缓存

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

之后的数据通信:

不再广播,直接封装 MAC 发包

这就是我们日常所说的 “ARP”

标准 ARP 解决的是:

同一网段,IP → MAC

但真实网络中会遇到更多问题:

  • 跨网段但设备“不知道路由器”
  • IP 切换、虚拟 IP、主备漂移
  • 设备只有 MAC,没有 IP
  • 特殊二层网络(ATM、frame Relay)

于是,就有了 四种 ARP 形态

Proxy ARP

Proxy ARP 要解决什么问题?

主机以为目标在本地,其实在别的网段。

Proxy ARP 场景

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

主机 A 没有配置网关,直接认为:

“192.168.2.20 也是本地的?”

Proxy ARP 工作过程

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

Proxy ARP 的特点

  • 路由器“替别人答话”
  • 源主机以为目标在本地
  • 实际走的是三层转发

现代网络中一般不推荐开启,更多是历史兼容方案。

Gratuitous ARP

什么是 Gratuitous ARP?

主机主动广播“这是我的 IP 和 MAC”。

不是问别人,而是告诉全网。

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

Gratuitous ARP 广播

Gratuitous ARP 常见用途 IP 冲突检测

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">


更新交换机 / 主机 ARP 表

  • 虚拟机迁移
  • 网卡更换
  • 容器漂移

高可用切换核心机制

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

没有 Gratuitous ARP:

主备切换 ≠ 真正可用

RARP

RARP 解决的历史问题

早期设备:

  • 没硬盘
  • 没配置
  • 只知道 MAC
一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

RARP 工作流程

为什么 RARP 不用了?

  • 功能单一
  • 无法下发参数
  • 需要专用服务器

BOOTP / DHCP 全面取代。

Inverse ARP

Inverse ARP 是干嘛的?

已知二层连接,反查对端 IP。

InARP 场景(ATM / frame Relay)

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">

为什么你几乎没见过?

因为在以太网中:

  • DHCP
  • ARP
  • IPv6 ND

已经完全覆盖需求。

四种 ARP 类型一张图总结

一文图解 ARP,从一次广播开始,到四种 ARP 全搞懂nerror="javascript:errorimg.call(this);">


顶一下()     踩一下()

热门推荐

发表评论
0评