3. 魔法数据包
魔法数据包(Magic Packet)是一个广播帧,包含目标计算机的MAC地址。由于 MAC 地址的唯一性,使数据包可以在网络中被唯一的识别。魔法数据包发送通常使用无连接的传输协议,如 UDP ,IPX,发送端口为 7 或 9 ,这只是通常做法,没有限制。
WOL 技术被提出了将近20年,绝大多数的现代网卡都支持在超低功耗下监听特定的报文。如果设备网卡接收到一个与自己 MAC 地址相同的魔法数据包,则网卡会向计算机的电源或主板发出信号以唤醒计算机。大部分的魔法数据包在数据链路层(OSI模型第2层)上发送,当发送时,使用广播地址广播到给定的网络上,不使用IP地址(OSI模型第3层)。当然这是绝大部分情况,魔法数据包也可以使用特定的 IP 地址进行发送。
显示上图Wake-on: g的表示该网卡支持网络唤醒功能
Wake-on各参数代表的含义:
d --禁用
p --物理活动唤醒
u --单播消息唤醒
m --多播(组播)消息唤醒
b --广播消息唤醒
a --ARP唤醒
g --特定数据包magic packet唤醒
s --设有密码的特定数据包magic packet唤醒
(3). 启用网卡网络唤醒功能
sudo ethtool eth1 | grep Wake-on
如果Wake-on 为d,网卡的网路唤醒功能为禁用状态,需要开启才可以使用,可以执行以下命令(注:eth0改为自己实际的网卡名称):
sudo ethtool -s eth0 wol g
配置开机自启:
如果每次重启系统后又变为禁用状态,可以将配置放到开机启动项中。
两种方法:
1). 加入开机启动项,将以下代码添加至/etc/rc.local
/sbin/ethtool -s eth0 wol g # 注: eth0 改为自己的网卡名称
2). 修改网卡属性。编辑sudo vim /etc/network/interfaces.d/eth0
三、唤醒工具安装及使用
1. wakeonlan工具安装
sudo apt install wakeonlan
2. wakeonlan工具命令的一些参数及含义:
-i # 设置目标IP地址,默认为255.255.255.255(广播地址)
-p # 设置端口,默认为9
-f # 指定需要唤醒的目标机器mac地址输入文件,一般在批量唤醒中使用
示例1:指定ip和端口