网络基础 5 ARP RARP协议

5. ARP/RARP协议

1.一句话定义ARP协议

ARP查户口本,IP地址翻译成MAC地址,通过广播请求和单播应答,建立IP-MAC映射表(ARP缓存)。

2. ARP工作流程(以主机A→主机B为例)

sequenceDiagram
    participant A as 主机A
    participant B as 主机B
    A->>全网广播: ARP请求(Who has 192.168.1.2?)
    B->>A: ARP应答(I'm 192.168.1.2, MAC=0A-11-22-33-44-02)
    A->>B: 正常通信(目标MAC=0A-11-22-33-44-02)

关键步骤

  1. 查缓存 → 当主机A和主机B要通信时,查路由表得知要访问主机B的IP地址是192.168.1.2,在本机ARP缓存中检查主机B对应的MAC地址,无目标MAC则广播询问
  2. 广播请求 → A主机全网问“谁是192.168.1.2?”,且在ARP请求中附带A主机自己的IP-MAC对应信息,其他主机发现与自己IP地址不匹配则丢弃ARP请求
  3. 单播应答 → B主机收到后发现ARP请求中的IP地址与自己IP地址匹配,则将A主机的IP-MAC映射添加到本地ARP缓存中,并将包含MAC地址的ARP应答消息发回主机A
  4. 更新缓存 → 主机A记录IP-MAC映射至本地缓存(临时保存)

3. ARP缓存管理

操作 Windows命令 Linux命令
查看缓存 arp -a arp -n
删除条目 arp -d 192.168.1.2 arp -d 192.168.1.2
静态绑定 arp -s 192.168.1.2 00-aa-bb... arp -s 192.168.1.2 00:aa:bb...

⚠️ 注意

  • 动态ARP条目默认超时时间
    • Windows:约2分钟
    • Linux:约60秒
  • 静态绑定可防ARP欺骗,但需手动维护

4. ARP欺骗(安全风险)

攻击原理: 攻击者伪造ARP应答,告诉主机A:“我是192.168.1.2,MAC=攻击者MAC”,导致主机A误将数据发给攻击者。

🔧防御措施

  1. 静态ARP绑定(手动维护IP-MAC映射)
  2. 启用ARP防护(企业级交换机可开启DAI检测)
  3. 使用ARP防火墙工具(如Arpwatch)

5.RARP协议

用于帮助无盘设备​(如旧式终端、瘦客户端)通过MAC地址获取IP地址

关键特性

  • 逆向ARP:与ARP相反(ARP是IP→MAC,RARP是MAC→IP)
  • 依赖RARP服务器:需预先配置MAC-IP映射表
  • ⚠️已被淘汰:现代网络用DHCP替代(更灵活)

6.RARP工作流程

sequenceDiagram
    participant Host as 无盘主机
    participant Server as RARP服务器
    Host->>局域网广播: RARP请求(我的MAC=00:AA:BB:CC:DD:EE,求IP!)
    Server->>Host: RARP响应(你的IP是192.168.1.100)

🔢 步骤拆解

  • 无盘主机广播请求:广播发送包含自身MAC地址的RARP请求包
  • 服务器查表:RARP服务器检查预配置的MAC-IP映射表
  • 响应或沉默
    • 找到匹配 → 单播回复IP地址
    • 无匹配 → 不响应(主机反复重试)

7.RARP vs ARP vs DHCP

协议 方向 用途 现代替代
ARP IP → MAC 已知IP找MAC地址 仍在使用
RARP MAC → IP 已知MAC找IP地址(需预配置) DHCP
DHCP 自动分配IP 动态分配IP+掩码+网关等 当前主流

为什么RARP被淘汰?

  • 手动维护MAC-IP映射表 → DHCP可自动分配✅
  • 仅支持IP分配 → DHCP还能提供网关、DNS等完整配置✅
0%