10

WoL (Wake on LAN) Magic Packet详解

 1 year ago
source link: https://direct5dom.github.io/2023/03/01/WoL-Wake-on-LAN-Magic-Packet%E8%AF%A6%E8%A7%A3/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

WoL (Wake on LAN) Magic Packet详解

2023-03-01计算机网络

因为最近一段时间远程电脑的需求越来越多,就研究了一下WoL的原理,没想到如此简单。于是便用WinUI写了个小软件:WinWoL

Wake on LAN 概述

即“LAN口唤醒”,或者说“局域网唤醒”。这种技术有多种别名,在此不多赘述 (可以参考:Wake on LAN)。

WoL是由硬件设备提供的一项管理功能,可以通过网卡向主板发送指令来切换电脑的电源状态。甚至可以直接将电脑从S5关机状态唤醒到S0开机。

WoL有多种标准,目前家用PC的事实通用标准是AMD提出的Magic Packet。

Magic Packet 概述

关于Magic Packet的详细介绍,可以直接参考:Magic Packet Technical White Paper

这是由AMD公司提出的网络唤醒协议,即发送远程唤醒数据包 (Magic Packet) 。

虽然Magic Packet只是AMD公司所开发的一项技术,但是受到了几乎所有网卡制造商的支持,因此,大多数流行网卡都能与之很好地兼容(包括2010年后生产的主板)。

Magic Packet 解析

根据Magic Packet Technical White Paper中所言,用于WoL的Magic Packet实际上很简单,它的结构是:

FF FF FF FF FF FF 11 22 33 44 55 66 11 22 33 44 55 66 ....... 

开头是6个十六进制数0xFF,然后重复16次待唤醒电脑的Mac地址 (此处假设待唤醒电脑Mac地址为:11:22:33:44:55:66)。

我简单的写了一个小项目,WinWoL。使用WinUI开发,可供参考。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK