#wake-on-lan #packets #wol #magic #sending #mac

wakey

用于创建和发送魔术WOL包的Wake-on-LAN库

7个版本

0.3.0 2023年1月6日
0.2.2 2022年6月26日
0.1.2 2019年8月20日
0.1.1 2019年2月4日

#4 in #wake-on-lan

Download history 98/week @ 2024-03-31 38/week @ 2024-04-07 17/week @ 2024-04-14 18/week @ 2024-04-21 47/week @ 2024-04-28 24/week @ 2024-05-05 25/week @ 2024-05-12 10/week @ 2024-05-19 17/week @ 2024-05-26 21/week @ 2024-06-02 15/week @ 2024-06-09 16/week @ 2024-06-16 37/week @ 2024-06-23 9/week @ 2024-06-30 28/week @ 2024-07-07 14/week @ 2024-07-14

每月 89 次下载

MIT 协议

10KB
181

Wakey

Rust Crates.io docs.rs

管理Wake-on-LAN包的库。它支持

  • 创建魔术包,
  • 通过UDP广播它们。

用法

从MAC地址的字符串表示形式,并在广播时使用默认值

let wol = wakey::WolPacket::from_string(&mac_adress, sep)?;
if wol.send_magic().is_ok() {
    println!("Sent the magic packet.");
} else {
    println!("Failed to send the magic packet.");
}

也可以使用原始字节构造数据包,并从/到自定义地址发送

use std::net::SocketAddr;

let wol = wakey::WolPacket::from_bytes(&[0x00, 0x01, 0x02, 0x03, 0x04, 0x05])?;
let src = SocketAddr::from(([0,0,0,0], 0));
let dst = SocketAddr::from(([255,255,255,255], 9));

wol.send_magic_to(src, dst)?;

包含的二进制文件

cargo run --bin wakey-wake 00:11:22:33:44:55

lib.rs:

管理Wake-on-LAN包的库。

示例

let wol = wakey::WolPacket::from_string("01:02:03:04:05:06", ':').unwrap();
if wol.send_magic().is_ok() {
    println!("Sent the magic packet!");
} else {
    println!("Failed to send the magic packet!");
}

依赖项

~87KB