为什么WakeOnLAN帧被发送到广播

我试图找出为什么以最简单的forms将LAN帧唤醒指定到以太网广播地址(FF:FF:FF:FF:FF:FF),而不是要开机的地址。

它是否与networking交换机内部表相关,将mac地址分配给端口?

根据AMD的规定 ,目标地址不一定是全地址。 它也可以是接收站的地址或多播地址。 有效载荷是一个不同的故事。 它必须是序列ff:ff:ff:ff:ff:ff,接着接收站的MAC地址重复16次。

在这种情况下,在交换机的CAM表中不存在该站的入口应该不重要。 如果条目不存在,数据包应该被转发出所有的端口。

是。 由于映射在一段时间后过期(如果我正确记得,一般是4个小时), 所以需要进行广播,以便在映射消失后有机会到达目标机器。

编辑:

更正:如果映射到期,消息仍然广播。

您需要使用广播的唯一原因是机器物理移动到不同的端口,并且您在映射到期之前尝试使用Magic数据包来唤醒机器。 听起来像在数据中心会很方便,但我不能说它是否被实际使用。

虽然我提供的例子可能从来没有发生过,但这可能是广播被选中的原因 – 在错误/过时映射的情况下,它更可靠。