13个版本
0.4.1 | 2023年6月5日 |
---|---|
0.3.5 | 2023年4月26日 |
0.3.4 | 2022年9月19日 |
0.3.3 | 2021年7月28日 |
0.1.2 | 2021年7月24日 |
1741 在 网络编程
62 每月下载量
20KB
199 行
pingall
一个用于 快速 和 高效 发现网络中可用的IP地址及其主机名的实用程序。此程序将在2秒内完成,比 nmap 196.168.1.*
快得多。
- 快速查找网络中的所有IP地址和主机名。
- 自动填充DNS/mDNS表。
使用方法
USAGE:
pingall [FLAGS] [OPTIONS]
FLAGS:
-d, --dont-resolve Don't attempt to resolve hostnames
-h, --help Prints help information
-r, --raw-socket Open raw socket instead of using system `ping` command. Requires permissions
-V, --version Prints version information
OPTIONS:
-i, --interface <interface> Interface to search
ping所有可用的IP地址
$ pingall
192.168.0.1 router.local
192.168.0.19 SAMSUNG-GALAXY-8
192.168.0.98 raspberrypi.local
10.10.0.132
10.10.0.152 vps.local
10.10.0.243
只ping wlan0
的Wi-Fi地址,不解析主机名
pingall -i wlan0 --dont-resolve
192.168.0.1
192.168.0.19
192.168.0.98
安装
cargo install pingall
详细信息
同时ping子网上的所有地址,超时时间为1秒,以便我们可以衡量网络上谁有响应。使用 tokio 使其全部异步(只使用1个线程)。
原始ping
默认使用系统的 ping
命令,因为打开Unix中的原始套接字需要root权限。为了避免使用ping命令,可以使用 --raw-socket
标志,但这将需要 sudo
或运行
setcap cap_net_raw+ep $(which pingall)
以授予此程序权限。
依赖项
- cargo
- ping
- avahi-resolve(用于解析主机名)
依赖项
~5–14MB
~152K SLoC