先决条件IP 寻址、MAC 地址介绍、地址解析协议 (ARP) 基础知识
在本文中,我们将讨论整个 ARP 家族,它们是 ARP、RARP、InARP、代理 ARP 和免费 ARP。让我们试着一一了解。
1. 地址解析协议 (ARP) –
地址解析协议是一种用于发现与给定网络地址相关联的物理地址的通信协议。通常,ARP 是网络层到数据链路层的映射过程,用于发现给定 Internet 协议地址的 MAC 地址。
为了将数据发送到目的地,拥有IP地址是必要的,但还不够;我们还需要目标机器的物理地址。 ARP 用于获取目标机器的物理地址(MAC 地址)。
在发送 IP 数据包之前,必须知道目的地的 MAC 地址。如果不是这样,则发送方广播 ARP 发现数据包,请求预期目的地的 MAC 地址。由于 ARP 发现是广播,因此该网络内的每个主机都会收到此消息,但是除了 IP 关联的预期接收器主机之外的每个人都将丢弃该数据包。现在,该接收方将向 ARP 发现数据包的发送方发送一个带有其 MAC 地址(ARP 回复)的单播数据包。原始发送方收到 ARP 回复后,更新 ARP 缓存并开始向目的地发送单播报文。
示例 – GATE CS 2005,问题 24(基于 ARP)。
2. 反向地址解析协议 (RARP) –
反向 ARP 是局域网中的客户端计算机使用的一种网络协议,用于从网关路由器的 ARP 表中请求其 Internet 协议地址 (IPv4)。网络管理员在 gateway-router 中创建一个表,用于将 MAC 地址映射到相应的 IP 地址。
当设置新机器或任何没有内存来存储 IP 地址的机器时,需要一个 IP 地址供自己使用。因此,机器发送一个 RARP 广播数据包,该数据包在发送方和接收方硬件地址字段中包含自己的 MAC 地址。
局域网内配置的特殊主机,称为 RARP-server 负责回复此类广播数据包。现在 RARP 服务器尝试找出 IP 到 MAC 地址映射表中的条目。如果表中的任何条目匹配,RARP 服务器将响应数据包与 IP 地址一起发送到请求设备。
- 以太网、以太网 II、令牌环和光纤分布式数据接口 (FDDI) 等 LAN 技术支持地址解析协议。
- RARP 没有在今天的网络中使用。因为我们有很多很棒的特色协议,比如 BOOTP(引导协议)和 DHCP(动态主机配置协议)。
3. 反向地址解析协议 (InARP) –
Inverse ARP 不是使用三层地址(IP 地址)来查找 MAC 地址,而是使用 MAC 地址来查找 IP 地址。顾名思义,InARP 只是 ARP 的倒数。反向 ARP 已被 BOOTP 和后来的 DHCP 取代,但反向 ARP 仅用于设备配置。在 ATM(异步传输模式)网络中默认启用反向 ARP。 InARP 用于从第 2 层地址(帧中继中的 DLCI)中查找第 3 层地址。配置帧中继时,反向 ARP 将本地 DLCI 动态映射到远程 IP 地址。使用反向 ARP 时,我们知道远程路由器的 DLCI,但不知道其 IP 地址。 InARP 发送请求以获取该 IP 地址并将其映射到第 2 层帧中继 DLCI。
4. 代理 ARP –
Proxy ARP 的实现是为了使被同一IP 网络或子网中的路由器连接成不同网段的设备能够将IP 地址解析为MAC 地址。当设备不在同一个数据链路层网络中,而在同一个 IP 网络中时,它们会像在本地网络上一样尝试相互传输数据。但是,分隔设备的路由器不会发送广播消息,因为路由器不通过硬件层广播。因此,地址无法解析。默认情况下启用代理 ARP,因此驻留在本地网络之间的“代理路由器”以其 MAC 地址响应,就好像它是广播寻址到的路由器一样。当发送设备收到代理路由器的 MAC 地址时,它会将数据报发送到代理路由器,代理路由器又将数据报发送到指定的设备。
5. 免费 ARP –
免费地址解析协议用于提前网络场景。这是计算机在启动时执行的操作。当计算机第一次启动时(网卡通电),它会自动向整个网络广播它的 MAC 地址。在每台交换机都知道计算机的免费 ARP MAC 地址之后,如果需要,允许 DHCP 服务器知道将 IP 地址发送到哪里。
免费 ARP 可能意味着免费 ARP 请求和免费 ARP 回复,但并非所有情况都需要。免费 ARP 请求是一个数据包,其中源和目标 IP 都设置为发出数据包的机器的 IP,目标 MAC 是广播地址 ff:ff:ff:ff:ff:ff ;不会出现回复包。
免费 ARP 是非 ARP 请求提示的 ARP 回复。免费地址解析协议可用于检测 IP 冲突。免费 ARP 还用于更新 ARP 映射表和交换机端口 MAC 地址表。
什么是ARP中毒(ARP欺骗)——
ARP 欺骗是一种网络攻击,其中攻击者通过 LAN(比如默认网关)发送伪造的 ARP 请求,从而将攻击者的 MAC 地址连接到该受害网络上的合法服务器。现在,攻击者将开始接收针对该 IP 地址的数据。在 ARP 中毒(或 ARP 欺骗)的帮助下,攻击者能够拦截数据帧、修改流量甚至停止传输中的数据。
ARP 中毒可以作为其他主要攻击的开端,例如中间人攻击、拒绝服务攻击或会话劫持攻击。稍后我们将深入讨论 ARP 欺骗。参考 –
地址解析协议 – 思科
tools.ietf.org/html/rfc826
tools.ietf.org/html/rfc903
ARP – 维基百科