clue/wol-react

通过Wake-On-LAN (WOL)请求开启您的PC

v0.1.0 2014-05-10 23:34 UTC

This package is auto-updated.

Last update: 2024-09-06 08:26:55 UTC


README

通过Wake-On-LAN (WOL)请求开启您的PC

注意:该项目处于测试阶段!请随时报告您遇到的问题。

使用方法

安装后,使用此库非常简单,只需运行

$loop = React\EventLoop\Factory::create();
$wolFactory = new Clue\React\Wol\Factory($loop);

$wolFactory->createSender()->then(function(Clue\React\Wol\Sender $wol) {
    $wol->send('11:22:33:44:55:66');
});

$loop->run();

如果您的环境需要非默认的广播地址(默认为:255.255.255.255:7),例如1.2.3.4:9。您可以将此传递给Factory上的createSender方法。例如

$loop = React\EventLoop\Factory::create();
$wolFactory = new Clue\React\Wol\Factory($loop);

$wolFactory->createSender('1.2.3.4:9')->then(function(Clue\React\Wol\Sender $wol) {
    $wol->send('11:22:33:44:55:66');
});

$loop->run();

bin/wol.php中还有一个CLI脚本来发送WOL请求,只需通过运行

$ php bin/wol.php 11:22:33:44:55:66

简介

以下简要介绍主要来自维基百科的WOL文章

Wake-on-LAN ("WOL")是通过一种特别设计的称为魔法包的数据包实现的,该数据包被发送到要唤醒的计算机。魔法包包含目标计算机的MAC地址。具有Wake-on-LAN功能的关机计算机将包含能够在关机状态下以低功耗模式“监听”传入数据包的网络设备。如果接收到指向设备MAC地址的魔法包,网络接口卡将通知计算机电源以启动系统唤醒,这与按电源按钮的方式非常相似。

魔法包是一个包含其有效负载中的任何位置的6字节全255(十六进制FF FF FF FF FF FF)的广播帧,后面跟着目标计算机的48位MAC地址的十六次重复,总共102字节。

由于魔法包只扫描上述字符串,而不是通过完整的协议栈进行解析,因此它可以作为任何网络和传输层协议发送,尽管此库使用典型的UDP数据报。魔法包通常在数据链路层(OSI模型中的第2层)发送,并广播到给定网络上所有连接的设备,使用网络广播地址;不使用IP地址(OSI模型中的第3层)。

安装

安装此库的推荐方式是通过composer。您是composer新手?查看composer简介?

{
    "require": {
        "clue/wol-react": "0.1.*"
    }
}

许可

MIT