go-wol是一个使用Go编写的支持 WOL(Wake-on-LAN)功能的程序,支持命令行接口(CLI)和 Web API 两种方式。可以通过命令行或 HTTP 请求触发唤醒目标设备。
WOL(Wake-on-LAN)是通过发送一个特定的“魔术包”(Magic Packet)来唤醒网络中处于睡眠或关机状态的计算机。
不加任何参数,直接运行程序,默认监听8080端口。
go run main.go
然后,发送 POST 请求到 http://localhost:8080/wakeonlan
,请求体为:
{
"mac_address": "00-14-22-01-23-45"
}
MAC
地址支持:
和-
分隔符格式,可以使用 curl 命令行工具来测试:
curl -X POST -H "Content-Type: application/json" -d '{"mac_address": "00:14:22:01:23:45"}' http://localhost:8080/wakeonlan
指定 -mac
参数将启动 CLI 模式: -mac
参数后输入需要唤醒的设备的MAC地址,向该地址发送魔术包。
go run main.go -mac "00:11:22:33:44:55"
运行项目根目录下的 build.sh
,可以编译出适用于不同架构、操作系统的可执行文件,脱离Go环境运行。
bash build.sh