LinuxWakeOnLan

LinuxWakeOnLan

Linux 系统网络唤醒

网络唤醒是一种技术,它允许你通过互联网远程唤醒或激活一台电脑或设备,就像按下电源按钮一样。这对于在不同地方远程控制你的电脑或设备非常有用,因为它可以让你在需要时启动它,而无需亲自到达设备旁。

设置 BIOS

以微星 MSI 主板为例

高级-唤醒事件设置-PCIE 设备唤醒-设置为允许 高级-电源管理设置 Erp-设置为关闭

安装 ethtool

sudo pacman -S ethtool

检查网卡是否支持

sudo ethtool enp34s0 | grep Wake

	Supports Wake-on: pumbg
	Wake-on: d

设置开机配置

因为使用ethtool命令设置的网卡启动在设备重启后就会失效,因此采用 systemd 服务开机设置

sudo cat > /etc/systemd/system/wol.service << EOF

[Unit]
Description=Configure Wake On Lan

[Service]
Type=oneshot
ExecStart=/usr/bin/ethtool -s enp34s0 wol g

[Install]
WantedBy=basic.target
EOF

sudo systemctl daemon-reload

sudo systemctl enable --now wol.service

使用 OpenWrt 路由器开机

在 OpenWrt 的软件包中安装luci-app-wol

在服务-网络唤醒中,选择机器唤醒

结合 OpenWrt 的 WireGuard 软件和其他设备组成内网,即可在外连接路由器,使用网络唤醒你的主机