网络唤醒那些事

personSoundtrack9407

Wake-on-LANWoL」允许通过网络消息打开/唤醒计算机

网络唤醒从来不是一个新事物,只是我们不知道或者未曾对其有足够的注意。

网络唤醒功能在打造远程办公环境下显得十分必要,比如位于 家中 或 公司 的计算机,出于经济和环保的目的,机器应适当被允许进入低功耗状态「睡眠 / 休眠 / 关机」,然而一旦进入低功耗状态,意味着需要适当的外部刺激才能让其重新恢复至工作模式,通过特定网络信号进行 「唤醒」便是一个不错的选择。

一般来说,执行唤醒任务最好由「同局域网内低功耗设备」代为执行,这个设计有点像手机SoC里的大小核,这类设备可以是运行OpenWrt的MIPS架构的路由器「TP-Link 703n」,也可以是常见的树莓派「推荐2代」,足够简单确保7×24小时可用,待机也不会产生太多能耗。

开启网络唤醒的三个必要条件:

  • 主板和BIOS支持WOL「主板有线网卡」
  • 知道目标机物理网卡地址
  • 网络可达「二层通信」

检查 & 启用网络唤醒

我们可以通过「操作系统」或「BIOS」进行进一步的确认和设置

OS

运行 > ncpa.cpl 打开「网络连接」> 找到你的有线网卡

属性

配置

电源管理

您可能还必须启用 BIOS 设置才能启用 WOL

BIOS

具体方法视厂商而定,关键词:

  • Automatic Power On
  • Power Management
  • Wake on LAN/WLAN
  • Power On by Onboard LAN
  • Power On by PCI-E Devices

启用时请注意 BIOS 选项附加的说明

获取MAC地址

Windows

arp -a

显示当前系统ARP表,即IP-MAC地址关系映射表

被动,相当于交易记录,双向

Softperfect Network Scanner

扫描指定网段工作网卡,并生成详细列表

主动,适用于寻找目标机器的场景

Linux

arp,同 Windows「arp -a」

arp-scan,主动式扫描,同Softperfect Network Scanner,但功能专一

Android / iOS

Fing / PingTools,类似于Softperfect Network Scanner,网络扫描工具类

发送唤醒信号

此处稍作区分,如果未勾选「只允许幻数据包唤醒计算机」,情况要简单得多,只要有其它网络信号请求与该物理网卡通信,都会触发唤醒操作;适用于网络中机器不多,服务简单的场景。

但如果仅允许幻数据包才能唤醒,则需要借助唤醒工具;好处是可以防止误触发。

幻数据包「Magic Packet」唤醒工具

平台 工具 特点
Windows wol.exe 免安装,命令行,跨网段
Android Fing 带网段扫描功能
Linux etherwake 命令行
iOS Fing 同Android版本

WOL属于无状态协议,仅发送,不确认

跨网段

在某些场景中,需要唤醒机器可能在另一个局域网内,然而你所在的机器是可以与这个网段进行通信的,此时我们需要给唤醒程序多一些指向信息。

以Windows和Linux平台为例:

Windows

加个 /d 和 目标IP wol.exe 00:11:22:33:44:55 /d 192.168.1.4

Linux

加个 -b 广播参数 etherwake -b 00:11:22:33:44:55 -b

写在最后

关于网络开机

方法和工具与网络唤醒原理一样,但需要主板和BIOS支持,一般多见于台式机

因 网络开机 需要主板上的网卡始终保持供电状态,开启此功能将产生「更多电费」

请注意,大多数笔记本电脑出于续航考虑,不支持从网络开机

关于唤醒带密码

笔者亦不曾见,但上述几款 命令行 软件均能支持

通过无线网卡「WLAN」唤醒

目前已知在Dell XPS某些型号可以,是否支持还是通过 BIOS 进行验证,另出于稳定性考虑,这恐怕不是主流唤醒方式「插网线」。

其它的一些妙用

笔者就拿 网络唤醒 和 定时任务 相结合,上班前自动唤醒位于家里和公司的电脑,即到即用。

ACPI系统电源状态 S0-S5

Magic Packet = 幻数据包 / 魔术封包 / 魔法封包 / 神奇数据包

3
1

扫码分享

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed

Menu