如何使用任意数据包(而不仅仅是魔术包)唤醒我的电脑?

如何使用任意数据包(而不仅仅是魔术包)唤醒我的电脑?

目前,我可以通过从 LAN 上的另一个设备发送魔术包来唤醒我的 PC。但是,当我从网络外部(WAN)发送数据包时,PC 不会开机,即使我已指示路由器将端口 9 上的 UDP 流量转发到 PC。如果我运行wireshark安装 wireshark在机器上并通过 WAN 发送魔术包,它确实被 PC 接收到了。

这个相关问题似乎表明 NAT 遍历以某种方式修改了数据包,从而阻止其实际唤醒 PC。可接受的答案建议:

取消勾选“仅允许魔术包唤醒计算机”

但是,此说明适用于 Windows,而不适用于 Ubuntu。

是否存在等效的设置或命令可以指示我的网卡接受任何数据包?

技术信息

  • 卡片:瑞昱半导体有限公司 RTL8111/8168/8411
  • 路由器:Netgear Nighthawk X6 R8000

答案1

我本周创建了一个问题,
在解答时我不小心启用了多个魔术包来唤醒 PC
我的解决方案可能对找到这个问题的人有帮助
ethtool -s enp3s0 wol g 只允许魔术包,然而
ethtool -s enp3s0 wol pumbg 将接受 ping、arp、广播……

如果您希望设置持久,您还需要创建一个服务:
etc/systemd/system/wol.service 如下所示:

[Unit]
Description=Configure Wake-up on LAN

[Service]
Type=oneshot
ExecStart=/sbin/ethtool -s enp3s0 wol g

[Install]
WantedBy=basic.target

/etc/netplan/youryamlfile
仅当您编辑包含以下内容时,才会应用此服务wakeonlan:真实

      ethernets:
          enp3s0:
                  addresses: [192.168.0.99/24]
                  gateway4: 192.168.0.1
                  wakeonlan: true
                  nameservers:
                    addresses: [192.168.0.1]

答案2

只是想为不同的 WOL 类型添加更多细节(来自 ethtool man)

       wol p|u|m|b|a|g|s|f|d...
              Sets Wake-on-LAN options.  Not all devices support
              this.  The argument to this option is a string of
              characters specifying which options to enable.
              p   Wake on PHY activity
              u   Wake on unicast messages
              m   Wake on multicast messages
              b   Wake on broadcast messages
              a   Wake on ARP
              g   Wake on MagicPacket™
              s   Enable SecureOn™ password for MagicPacket™
              f   Wake on filter(s)
              d   Disable (wake on nothing).  This option
                  clears all previous options.

相关内容