rk3568 Linux 网络唤醒
网络唤醒(Wake-on-LAN,WOL)是一种计算机局域网唤醒技术,使局域网内处于关机或休眠状态的计算机,将状态转换成引导(Boot Loader)或运行状态。无线唤醒(Wake-on-Wireless-LAN,WoWLAN)作为WOL的补充技术,使用无线网卡去唤醒计算机。网络唤醒在一般的局域网环境里使用有限广播地址(255.255.255.255)即可,由于路由器都不转发目的地址为有限广播地址的数据报,因此在复杂网络情况下通常使用子网定向广播地址。在局域网外唤醒局域网内特定计算机,可以使用路由器的DDNS与端口转发。
关键词:网络唤醒
文章目录
- rk3568 Linux 网络唤醒
- 1. 以太网唤醒 WOL(wake on lan)
- 2. 无线唤醒 WOW(wake on wlan)
- Tips
- 总结
网络唤醒是设备休眠时响应网络唤醒包,需要根据被唤醒设备链路 mac 发送唤醒包,要求被唤醒机和发唤醒设备在同一局域网内;
操作步骤:① 获取被唤醒设备 LAN MAC / WLAN MAC, 被唤醒设备休眠;②发送唤醒包主机,安装唤醒工具,并发送唤醒包;③等待休眠机器响应网络唤醒。
1. 以太网唤醒 WOL(wake on lan)
- 须安装 ethtool wakonlan
sudo apt-get update
sudo apt-get install ethtool -y
sudo apt install wakeonlan -y
- 查看唤醒设备MAC
ifconfig eth0
eth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether ca:38:cf:66:cf:2c txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 33
# eth0 mac 为 ca:38:cf:66:cf:2c
进入休眠等待唤醒魔术包
echo -n mem > /sys/power/state
- 发送唤醒包
wakeonlan MAC(slave)
wakeonlan ca:38:cf:66:cf:2c
2. 无线唤醒 WOW(wake on wlan)
WiFi 唤醒不同于 以太网唤醒,被唤醒设备 需要开启响应网络唤醒;
如果 wlan 与 lan 有网络隔离,则需要两台设备连接同一热点。
验证 唤醒具体操作如下:
① 确认 wlan 功能正常且联网
#iw list | more
#iw dev --> phy#0
iw dev
phy#0
Interface p2p0
ifindex 3
wdev 0x2
addr 68:4e:d4:ff:c3:d3
type managed
txpower 42949572.96 dBm
Interface wlan0
ifindex 2
wdev 0x1
addr 68:4e:d4:ff:c3:d3
type managed
txpower 42949572.96 dBm
# 可以看到 唤醒设备为 phy0
# wlan0 mac 为 68:4e:d4:ff:c3:d3
② 启用 wifi唤醒 (需要 WiFi 唤醒)
a) wow enable
iw phy {phyname} wowlan enable {option}
sudo iw phy0 wowlan enable any
b) wow disable (屏蔽 WiFi 唤醒)
iw phy {phyname} wowlan disable
iw phy0 wowlan disable
c) wowlan status (查询当前 wifi 唤醒控制)
# 关闭 wlan 网络唤醒
iw phy0 wowlan show
WoWLAN is disabled.
# 启用 wlan 网络唤醒
iw phy0 wowlan show
WoWLAN is enabled:
* wake up on special any trigger
③ 待设定网络唤醒后,再休眠设备 参照 “被唤醒设备 进入休眠命令”
④ 向被唤醒设备发送唤醒包
wakeonlan 68:4e:d4:ff:c3:d3
Tips
a) 网络唤醒时,可以先测试网络 ping 包是否正常;如不正常则需要连接到同一局域网。
b) WiFi 网络唤醒时则需要开启响应WiFi唤醒,否则无法唤醒。
c) 小白要注意 wakeonlan 命令,先安装再使用。
总结
日行一善,善始善终。