#routes #indexing #customized #temporary #table #platform #narrowlink

narrowlink-custom-dependencies

本软件包为 Narrowlink 提供定制 Rust 库的临时索引功能。

1 个不稳定版本

0.0.1 2023年11月4日

#7 in #narrowlink

MIT 许可证

68KB
2K SLoC

Rust 1K SLoC // 0.0% comments C 747 SLoC // 0.1% comments

本软件包为 Narrowlink 提供定制 Rust 库的临时索引功能。


lib.rs:

本项目旨在为各种平台上的路由表提供高级接口,用于操作和观察。

示例

添加路由

// route traffic destined for 10.14.0.0/24 to 192.1.2.1 using interface 9
let handle = Handle::new()?;
let route = Route::new("10.14.0.0".parse().unwrap(), 24)
    .with_ifindex(9)
    .with_gateway("192.1.2.1".parse.unwrap());
handle.add(&route).await

监听路由表变化

let handle = Handle::new()?;
let stream = handle.route_listen_stream();
futures::pin_mut!(stream);
while let Some(event) = stream.next().await {
    println!("{:?}", value);
}

依赖

~3.5–7.5MB
~137K SLoC