广播MAC地址是如何实现的?

网络工程 ARP 播送
2022-02-13 01:39:29

二层广播是二层包的目的地址是FF-FF-FF-FF-FF-FF。

我有一个关于广播 MAC 地址的问题。

您会看到 ARP 请求,它将目标 MAC 地址发送到广播。

在此处输入图像描述

我对此有疑问:

  1. 广播MAC地址的实际明星是谁?是路由器吗?还是开关?
  2. 你看在局域网里,ARP 请求发送了 6 次,我开了一个(192.168.1.165)。为什么广播只发送 6 次而不是 256 次(/24)?

EDIT-01

感谢您的回复,您看literally "everyone on this broadcast domain",如果这是一个/8段,它是否会字面上有这么多地址?还是只会遍历局域网中的地址?

我的意思是,如果局域网中只有10.10.10.1/8, 10.10.10.2/810.10.10.5/8如果发送数据到ff:ff:ff:ff:ff:ff,它会遍历其他两个地址,还是从10.10.10.110.255.255.255

2个回答

关于“EDIT-01”下的附加问题:

感谢您的回复,您看到字面上的“这个广播域上的每个人”,如果这是一个 /8 段,它是否会字面上有这么多地址?还是只会遍历局域网中的地址?

是的,这个广播域上的每个人。这是在第 2 层,所以它不关心 IP 地址是否在 /8 中。

我的意思是如果局域网中只有10.10.10.1/8、10.10.10.2/8、10.10.10.5/8,如果发送数据到ff:ff:ff:ff:ff:ff,会不会遍历另外两个地址,还是从 10.10.10.1 到 10.255.255.255?

不知道你在这里得到什么,但如果你的意思是局域网中有 3 台设备,它们在同一个广播域中,所以它们都会收到发送到广播地址的帧。

ARP 用于将 IP 地址解析为 L2 传输所需的 MAC 地址。由于目标 MAC 未知,因此它作为 L2 广播发送。

如果 ARP 请求失败(超时),大多数主机会重复一次或两次。高层协议也有可能重试,也很常见,也会多次重复生成的 1-3 个 ARP 请求。

由于 ARP 请求是广播的,因此完全独立于子网大小。

(有限的)广播到达本地 L2 网段中的每个节点——它只是被每个交换机泛洪到它的所有端口(但接收它的那个端口)。即使在同一 L2 网段中有多个 IP 子网时也是如此。

[Re: EDIT-01]: 你在混合 L2 和 L3 - IP/L3 没有自己的广播机制。它只能使用来自较低 L2 层的广播(如果存在)。因此,它告诉以太网发送以太网交换机传播到所有 L2 节点的广播 - 该传播完全独立于 IP。

该广播将自己标识为 Ethertype 的 ARP 数据包。它由实现 ARP 的那些端节点处理,并由其他节点丢弃。然后,本地 IP 堆栈解析数据包,并且被寻址的一个节点发送响应。