1 个不稳定版本

0.0.0 2020年10月5日

#19 in #嗅探器

MIT 许可证

11KB
247

netutil

该应用程序处于开发中,命令/API可能会更改

安装

要在您的系统中安装netutil,您必须克隆仓库,构建目标为release的包,然后运行cargo install

使用cargo安装二进制文件

cargo install netutil

检查安装

$ netutil --version

卸载

由于这是一个cargo二进制文件,您可以通过发出cargo uninstall --bin netutil来轻松卸载包。

用法

netutil是一个简单的端口嗅探工具,通过尝试打开TCP连接,帮助了解给定范围内的哪些端口是开放的。要测试单个地址,必须运行

$ netutil 127.0.0.1:8080

此命令将返回类似于以下输出的输出

>127.0.0.1:8080 - Open

此输出表示端口8080在IP地址(本地IP地址)127.0.0.1中开放。

也可以使用表示“范围”的-r参数测试一组端口

$ netutil 127.0.0.1:8080 -r 8100

范围是从target地址端口到range参数值端口。在上面的例子中,范围将是[8080, 8100]。

由于将要测试一组端口,因此在初始化任务之前会提示确认

$ netutil 127.0.0.1:8080 -r 8100
> Are you sure you want to scan on 127.0.0.1:8080 from port 8080 to 8100? (y/n):

如果执行任务后没有可用端口,则会出现如下消息

> No ports open in address 127.0.0.1:8080 for the port range 8080 to 8100

否则将显示可用地址列表

>127.0.0.1:8080 - Open
>127.0.0.1:8084 - Open
>127.0.0.1:8095 - Open
>127.0.0.1:8099 - Open
>127.0.0.1:8100 - Open

基准测试

time cargo run -- 127.0.0.1:3000 -r 65535

Are you sure you want to scan on 127.0.0.1:3000 from port 3000 to 65535? (y/n): y
Scanning on 127.0.0.1:3000
Open ports:
 127.0.0.1:5432
 127.0.0.1:8080
 127.0.0.1:47786
 127.0.0.1:53708
cargo run -- 127.0.0.1:3000 -r 65535  5,14s user 10,79s system 165% cpu 9,601 total

依赖关系

~0.7–8.5MB
~51K SLoC