rk3568 Linux 网络唤醒

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)

  1. 须安装 ethtool wakonlan
sudo apt-get update
sudo apt-get install ethtool -y
sudo apt install wakeonlan -y
  1. 查看唤醒设备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
  1. 发送唤醒包
    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 命令,先安装再使用。

总结

日行一善,善始善终。

你可能感兴趣的:(Linux,linux,WOL)