8个版本 (4个重大更新)
使用旧的Rust 2015
0.5.1 | 2018年9月12日 |
---|---|
0.5.0 | 2018年9月12日 |
0.4.0 | 2018年4月19日 |
0.3.1 | 2017年1月3日 |
0.1.0 | 2016年11月30日 |
#11 在 #usage
用于 netinfo-ffi
57KB
864 行
Netinfo
Netinfo是一个Rust库和命令行应用程序,用于按进程分组网络使用。它以nethogs类似的方式工作,因此您不需要特殊的内核模块。
与nethogs相比,它还支持UDP连接。
因为它大量使用/proc
文件系统,目前只支持Linux。
如何使用库
将其添加到您的Cargo.toml
[dependencies]
netinfo = 0.5.1
如何编译二进制文件
安装Rust和Cargo,然后调用
# This will create the binary `~/.cargo/bin/netinfo`
$ cargo install netinfo
运行二进制文件
为了避免Permission denied
错误,您必须以root身份运行程序或允许程序捕获网络流量
sudo setcap cap_net_raw,cap_net_admin=eip /path/to/your/bin
lib.rs
:
此包将按进程分组网络使用。它使用与nethogs
类似的方法:捕获所有数据包,然后使用它们的源/目标地址将它们与进程匹配。
此匹配过程依赖于/proc
文件系统,因此它仅在Linux上工作。
因为捕获网络流量对于普通程序是不允许的,您必须以root身份运行您的二进制文件或允许使用以下方式捕获:
sudo setcap cap_net_raw,cap_net_admin=eip /path/to/your/bin
依赖项
~3.5–5MB
~102K SLoC