为什么通过 LAN 唤醒计算机时需要使用 IP 地址?

为什么通过 LAN 唤醒计算机时需要使用 IP 地址?

我安装了新的 GNU/Linux Debian 9 服务器。

这是我从中得到的ethtool

root@web-server:~# ethtool enp2s0
Settings for enp2s0:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                             100baseT/Half 100baseT/Full
                                             1000baseT/Full
        Link partner advertised pause frame use: Symmetric Receive-only
        Link partner advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: pumbg
        Wake-on: g
        Current message level: 0x00000033 (51)
                               drv probe ifdown ifup
        Link detected: yes

因此,您会看到 Magic Packet 位于 ( Wake-on: g)。


我将这台计算机从关机状态唤醒,如下所示:

./wolcmd 00********** 192.168.0.104 255.255.255.0 7  # I've hidden the MAC address here

从 Windows 10 上的 Cygwin 使用Depicus 局域网唤醒命令行


我不明白的是,为什么我需要指定IP地址和掩码或端口号?

为什么MAC地址不够用?有谁可以详细说明一下吗...

答案1

WoL 魔术数据包可以发送到 UDP 端口 0、7 或 9(取决于所使用的硬件),也可以作为类型 0x0842 的原始以太网数据包发送。wolcmd选择使用前一种方法,默认端口 7。

注意wolcmd 支持UDP广播,这意味着如果您的硬件和网络支持TCP/IP广播,您可以指定255.255.255.255作为地址和掩码。魔法数据包只会被它包含 MAC 地址的机器解释;所有其他人都会忽略它。

答案2

使用的语法为:wolcmd [mac 地址] [ip 地址] [子网掩码] [端口号 = 7]

[IP 地址] 和 [子网掩码] 用于需要通过互联网唤醒计算机的情况。 [ip 地址] 不必是编号的 IP,您可以使用命名地址或 DDNS 地址,您的 DNS 会将其转换为 IP。

我尚未确认这一点,但我猜想,如果您要唤醒本地网络上的计算机,则实际上并不需要 [ip 地址] 和 [子网掩码]。您可以将它们都设置为 255.255.255.255,它可能会起作用。

[端口号] 是可选的,可以省略,默认端口为 7。

[ip 地址] 的另一个可能的应用是告诉您的路由器在计算机唤醒并请求 DHCP 地址时将该 IP 地址分配给该 MAC 地址。这取决于路由器的智能程度以及该 IP 地址是否尚未分配。 (不确定这是否/如何通过互联网工作)。

答案3

也许它可以在互联网上使用。指定 IP 地址会将其发送到正确的路由器,然后可以从那里对其进行排序。如果计算机在本地网络上有一个静态 IP 地址,那么路由器肯定可以找到它(也许它需要比消费者路由器更高级的配置,但我可以看到该应用程序。

相关内容