#ping #networking #colored #prettier #utility #unrestricted

bin+lib rustyping

用 Rust 编写的更美观的彩色 ping 工具

5 个稳定版本

2.3.1 2022 年 12 月 2 日
2.3.0 2022 年 11 月 23 日
2.2.0 2021 年 8 月 9 日
2.1.0 2021 年 7 月 5 日
2.0.0 2021 年 6 月 14 日

2135命令行工具 中排名

每月 24 次下载

GPL-3.0-or-later

25KB
386 代码行

rustyping

用 Rust 编写的更美观的彩色 ping 工具。

screenshot

安装

有三种安装选项

编译需要 cargorustup。由于 rustyping 需要使用 Rust 工具链的 nightly 频道,因此需要 rustup。目前,rustyping 仅支持 UNIX 平台(Linux 和 macOS)。如果您希望它在其他平台上得到支持,请提交一个 issue。

git clone https://github.com/k4yt3x/rustyping.git
cd rustyping
cargo build --release
cargo install --path .
strip $(which rp)

rustyping 的二进制文件将安装到 Cargo 的二进制目录中(例如,~/.cargo/bin/rp)。您可以使用命令 rp 来启动 rustyping。请注意,Linux 上的程序需要具有 CAP_NET_RAW 能力,才能作为非 root 用户打开原始套接字。下面的命令为 rustyping 的二进制文件赋予此能力。

sudo setcap cap_net_raw=+eip $(which rp)

不受限制模式

默认情况下,非 root 用户可以以最小间隔 200ms 或 0.2s 发送 ping。这是为了防止普通用户引起 ICMP 洪水。如果您希望禁用此安全功能,可以编译带有 unrestricted 功能的 rustyping。

cargo build --release --features unrestricted

用法

您可以使用 -h/--help 开关查看用法。

USAGE:
    rp [OPTIONS] <DESTINATION>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -c, --count <COUNT>          stop after <count> replies [default: 0]
    -i, --interval <INTERVAL>    seconds between sending each packet [default: 1.0]
    -W, --timeout <TIMEOUT>      time to wait for response [default: 2.0]

ARGS:
    <DESTINATION>    dns name or ip address

依赖

~8–17MB
~231K SLoC