【网络基础】解析ARP协议:概念、工作原理、安全风险、相关指令

文章目录

  • [1. 引入](#1. 引入)
  • [2. 概念](#2. 概念)
  • [3. ARP协议工作过程](#3. ARP协议工作过程)
  • [4. 通过指令 获取当前主机所处局域网的所有IP和MAC地址?](#4. 通过指令 获取当前主机所处局域网的所有IP和MAC地址?)
  • [5. arp欺骗](#5. arp欺骗)
    • [5.1 防护措施](#5.1 防护措施)

1. 引入

我们知道,在局域网通信中,一台主机想向另一台主机发送数据,自然需要得到目标网络 以及 目标主机,但发送方只知道目标IP,而不知道对方的MAC地址,自然就无法封装MAC帧;

此时就有一个概念:在同一个网段,通过目标IP获取目标MAC地址 ------ ARP协议(地址解析协议)

3解释ARP的工作过程 前,我们先看ARP数据报的格式


以太网和ARP报文结构的说明:

  • 源 MAC 地址目的 MAC 地址 在以太网首部和 ARP 请求中各出现一次。在链路层为以太网的情况下,这些字段在 ARP 请求中可能显得多余,但对于其他类型的链路层网络,它们可能是必要的。

  • 硬件类型:指示链路层网络类型。例如,1 表示以太网。

  • 协议类型:指示要转换的地址类型。例如,0x0800 表示 IP 地址。

  • 硬件地址长度:对于以太网地址,长度为 6 字节。

  • 协议地址长度:对于 IP 地址,长度为 4 字节。


以上是固定的字段定义。接下来是 ARP 报文中的具体信息:

  • 发送端以太网地址:即发送方的 MAC 地址。

  • 发送端 IP 地址:即发送方的 IP 地址。

  • 目标以太网地址 :目标的 MAC 地址,通常未知时设为全 1,即 ff:ff:ff:ff:ff:ff

  • 目标 IP 地址:即目标的 IP 地址。


关于 op 字段(操作码)的说明:

  • op 字段 指示 ARP 报文的类型:

    • op = 1:ARP 请求。
    • op = 2:ARP 应答。
  • 任何主机在网络中可能会向目标主机发起 ARP 请求,并在之后收到对应的 ARP 应答。

  • 同样,任何主机也可能会接收到来自其他主机的 ARP 请求。


2. 概念

有了上面的ARP协议的引入,简单介绍其概念:

**ARP(Address Resolution Protocol,地址解析协议)**是一种用于在局域网内通过IP地址来寻找对应的MAC地址的协议

  • 其主要作用是在网络中将IP地址转换为物理地址(即MAC地址),从而使得数据包可以在以太网或其他局域网介质中正确传输。

3. ARP协议工作过程

  1. 首先是发送方HA向目标HD发送数据:
    • 所有主机都会收到并处理(目的MAC地址为FF...FF,未知):
  2. 随后HD会进行应答(一对一传输应答):
    • 只有HA(接收方)会收到并处理该应答(目的MAC地址已知):
  1. 从上面arp的工作流程来看,arp会进行一次请求和应答,是不是每次发送数据都得进行请求和应答?
    • 不是,arp请求成功后,请求方会将 [IP:MAC地址] 的映射关系暂时保存
  2. 是否只在目标端的子网中才进行arp,从发送端到目标端的路径中会不会进行?
    • 会进行,如上面的两图,arp的过程在整个局域网中随时可能发生。

4. 通过指令 获取当前主机所处局域网的所有IP和MAC地址?

在Windows/linux上,可以直接使用arp -a命令来查看本地ARP缓存中的IP和MAC地址。这会显示与当前主机通信过的其他设备的IP和MAC地址。

cpp 复制代码
arp -a
Interface: 192.168.1.2 --- 0x3
  Internet Address      Physical Address      Type
  192.168.1.1           00-14-22-01-23-45     dynamic
  192.168.1.3           00-14-22-67-89-ab     dynamic
  192.168.1.4           00-14-22-cd-ef-12     dynamic

5. arp欺骗

**ARP 欺骗(ARP Spoofing)**是一种网络攻击方法,其中攻击者向局域网中的设备发送伪造的 ARP 消息,从而使目标设备将攻击者的 MAC 地址与目标 IP 地址进行关联。这会导致以下问题:

  1. 流量劫持:攻击者可以拦截和查看原本发送给目标设备的数据包。
  2. 中间人攻击:攻击者可以修改或伪造数据包,从而干扰通信。
  3. 网络瘫痪:通过发送大量伪造的 ARP 请求,可以使网络中的设备无法正常通信。

5.1 防护措施

  1. 启用静态 ARP 表:在网络设备上配置静态 ARP 表项,防止 ARP 表被篡改。
  2. 使用 ARP 监控工具:使用工具检测和警报 ARP 欺骗活动。
  3. 网络分段和 VLAN:通过网络分段和 VLAN 限制 ARP 欺骗的影响范围。
  4. 启用动态 ARP 检测:在支持的交换机上启用动态 ARP 检测功能。
相关推荐
网络空间小黑2 小时前
TCP/IP 知识体系
网络·网络协议·tcp/ip·计算机网络·5g·wireshark·信息与通信
Dotrust东信创智3 小时前
面向SDV的在环测试深度解析——仿真中间件SIL KIT应用篇
网络·中间件·汽车
leoufung4 小时前
ECPF 简介
linux·网络·kernel
神经毒素4 小时前
WEB安全--Java安全--shiro721反序列化漏洞
安全·web安全
救救孩子把6 小时前
MCP本地高效与云端实时:stdio 与 HTTP+SSE 传输机制深度对比
网络·网络协议·http·sse·mcp·stdio
hao_wujing6 小时前
衡量 5G 和未来网络的安全性
网络·5g
哞哞不熬夜7 小时前
JavaEE--初识网络
java·网络·java-ee
什么半岛铁盒7 小时前
Linux信号的保存
linux·运维·网络
百锦再7 小时前
大数据技术的主要方向及其应用详解
大数据·linux·网络·python·django·pygame
小疆智控10 小时前
数字化工厂升级引擎:Modbus TCP转Profinet网关助力打造柔性生产系统
服务器·网络·tcp/ip