目录

网卡唤醒配置

概述

因为家里小型服务器太多了,工作电脑又在服务器旁边,所有服务器开着,能把房间温度干到33°,实在受不了,因为大部分的服务器内都是测试类型的服务,所以其实没有必要 7x24h 运行,通过服务器的网卡唤醒功能,在需要使用过的时候才开机,还能省电费,下面是具体的配置流程。

关于WOL

WOL,Wake on Lan,就是我们常说的网卡唤醒,是一种网络标准协议,它允许计算机通过网络信号从休眠模式或关机状态唤醒。WOL 在远程管理和维护计算机系统时非常有用。WOL 依赖于网络接口卡 (NIC) 的一个特殊功能,该功能在计算机关闭或休眠时保持网络接口卡处于低功耗状态,并监听特定的网络数据包,称为 Magic Packet。当网络接口卡接收到 Magic Packet 时,它会唤醒计算机。Magic Packet 是一个特定格式的数据包,包含目标计算机的 MAC 地址。

配置操作

首先需要在 BIOS 里进行相关的设置,我的主板是通过 DEL 键,进入到 BIOS 的,然后进入 Advanced -> Network Stack Configuration -> Lan Wake up Control,不同主板可能配置的方式不一样,请注意区分。

/%E7%BD%91%E5%8D%A1%E5%94%A4%E9%86%92%E9%85%8D%E7%BD%AE/img_1.png /%E7%BD%91%E5%8D%A1%E5%94%A4%E9%86%92%E9%85%8D%E7%BD%AE/img_2.png /%E7%BD%91%E5%8D%A1%E5%94%A4%E9%86%92%E9%85%8D%E7%BD%AE/img_3.png
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# 查看网卡是否支持
ethtool enp7s0
# 设置网卡唤醒
ethtool -s enp7s0 wol g

# 持久化网络配置
cat > /etc/sysconfig/network-scripts/ifcfg-eno1 <<"EOF"
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eno1
NAME=enp7s0
UUID=ac79808e-d50c-4690-a27d-9f31e28b580d
DEVICE=enp7s0
IPADDR=192.168.1.205
PREFIX=24
GATEWAY=192.168.1.1
DNS1=192.168.1.1
# 添加以下配置开启 WoL
ETHTOOL_OPTS="wol g"
EOF

# 重启网络设置
systemctl restart NetworkManager

主要是要配置到永久配置上,也就是网卡的配置要持久化,否则关机之后,网卡的配置就会丢失,会一直都无法通过 WOL 开启主机。下面的测试,是从 192.168.1.110 的主机上,向 Mac 地址为 2a:58:4d:12:f:c1 的网卡发送 WOL 命令的抓包情况,可以看到目标主机上,可以抓取到 UDP 协议的 Magic Packet。

/%E7%BD%91%E5%8D%A1%E5%94%A4%E9%86%92%E9%85%8D%E7%BD%AE/img.png

安装wol

下面是在 OpenEuler 系统下安装 wol 命令的过程。

1
2
curl -LO https://rpmfind.net/linux/epel/8/Everything/x86_64/Packages/w/wol-0.7.1-23.el8.x86_64.rpm
rpm -ivh wol-0.7.1-23.el8.x86_64.rpm

参考资料

  1. Wake-on-LAN
注意
本文最后更新于 2024年7月7日,文中内容可能已过时,请谨慎参考。