我可以在不广播的情况下发送 LAN 唤醒数据包吗?

我可以在不广播的情况下发送 LAN 唤醒数据包吗?

我正在尝试将 WOL 数据包发送到一系列机器,当发送数据包的机器通过一个或多个交换机连接到目的地时,这种方法有效,但如果数据包需要经过路由器,它就会被吞噬。负责配置和维护路由器/交换机的人告诉我,路由器正在吞噬 WOL 数据包,因为它们是以广播形式发送的。

因此,我想知道是否有人知道如何将 WOL 帧发送到路由器另一端的机器,而不将其包裹在广播 IP 数据包中。

答案1

网络唤醒使用“魔术包”发送第 2 层OSI 模型。路由器需要 OSI 模型第 3 层中包含的信息才能路由数据包。另一方面,交换机是第 2 层设备,这就是为什么当您刚通过交换机时它会起作用的原因。简而言之,您需要有 IP 信息才能跨越路由器,而 WOL 只有 MAC 地址信息,因此不可能跨越路由器。

此外,您想要唤醒的计算机尚未打开,因此没有 IP 地址,因此无法发送数据包并让其穿过路由器到达您的计算机,除非将路由器配置为将数据包静态路由到您的 NIC 的 MAC(请参阅网络唤醒以获得更多选项)。

答案2

尽管前面的答案是有道理的,但魔术包不能穿过路由器的说法是不正确的。尝试LAN 唤醒 2启动本地网络中的一台机器。我能够从通过 WLAN 连接的 PC 上运行它,启动另一台插入交换机的机器,该交换机插入路由器。不确定路由器中的静态 IP 地址是否有效。也许软件正在通过 192.168.0.255(网络广播地址)发送以到达所有连接的适配器。

答案3

通常路由器会阻止发送到广播 IP 地址(如 192.168.0.255)的数据包(VPN 连接也是如此)。

但是,如果路由器允许将静态条目添加到其 ARP 表,那么魔术数据包就可以通过路由器:

  • 您可以为路由器再创建一个广播地址。例如,添加此 ARP 条目:192.168.0.254 FF:FF:FF:FF:FF:FF。
  • 另一种方法是将 MAC 地址分配给您的目标 IP 地址:192.168.0.X XX:XX:XX:XX:XX:XX。

相关内容