#ping #raw-sockets #monitor #quality #csv #statistics #root

app epingm

简单的网络质量监控 ping 工具

3 个不稳定版本

0.2.0 2024 年 3 月 5 日
0.1.1 2024 年 3 月 2 日
0.1.0 2024 年 3 月 2 日

#4#raw-sockets

Download history 45/week @ 2024-03-08 5/week @ 2024-03-15 50/week @ 2024-03-29 15/week @ 2024-04-05

102 每月下载量

MIT 许可证

19KB
437 代码行

epingm - 一个简单的 ping 监控器

一个简单的程序,用于监控互联网连接质量。发送一系列 ping 并将统计数据记录到标准输出。

这需要原始套接字访问权限,因此需要以 root 用户身份或具有 CAP_NET_RAW 能力运行。

注意:目前不支持 IPv6。

Usage: epingm [OPTIONS] <TARGET>...

Arguments:
  <TARGET>...  Targets to ping

Options:
  -c, --count <COUNT>
          Number of pings to send per volley [default: 1000]
  -i, --interval <INTERVAL>
          Seconds between each ping in a volley [default: 0.01]
  -s, --size <SIZE>
          Payload size in bytes [default: 64]
      --timeout <TIMEOUT>
          Maximum number of seconds to wait for a reply [default: 10]
      --volley-interval <VOLLEY_INTERVAL>
          Seconds between each volley [default: 0]
  -f, --format <FORMAT>
          Output format [default: text] [possible values: text, csv]
  -h, --help
          Print help

用法

ping 一台主机

epingm <host>

将 CSV 数据记录到文件

epingm <host> -f csv > <file>

示例输出

# epingm 8.8.8.8
[2024-03-02 19:24:10] 8.8.8.8 (8.8.8.8): received: 1000/1000, lost: 0, avg: 14 ms, min: 13 ms, max: 23 ms, 50th: 14 ms, 99th: 17 ms, missing: []
[2024-03-02 19:24:20] 8.8.8.8 (8.8.8.8): received: 1000/1000, lost: 0, avg: 14 ms, min: 13 ms, max: 19 ms, 50th: 14 ms, 99th: 17 ms, missing: []
[2024-03-02 19:24:30] 8.8.8.8 (8.8.8.8): received: 1000/1000, lost: 0, avg: 14 ms, min: 13 ms, max: 19 ms, 50th: 14 ms, 99th: 16 ms, missing: []
# epingm 8.8.8.8 -f csv
time,target,ip,received,sent,lost,avg,min,max,50th,99th,missing
2024-03-02 19:26:39,8.8.8.8,8.8.8.8,1000,1000,0,14,13,20,14,16,[]
2024-03-02 19:26:49,8.8.8.8,8.8.8.8,1000,1000,0,14,13,22,14,17,[]
2024-03-02 19:26:59,8.8.8.8,8.8.8.8,1000,1000,0,14,13,19,14,17,[]

依赖项

~5–17MB
~175K SLoC