目前,我可以通过从 LAN 上的另一个设备发送魔术包来唤醒我的 PC。但是,当我从网络外部(WAN)发送数据包时,PC 不会开机,即使我已指示路由器将端口 9 上的 UDP 流量转发到 PC。如果我运行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.