loong716 / PortScan

使用golang开发的TCP端口扫描工具

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PortScan

golang开发的简单的TCP端口扫描工具

  • 支持单个IP或CIDR来指定扫描目标
  • 支持单个/多个端口或端口范围的组合来指定扫描端口
  • 支持自定义goroutine的数量来控制扫描的速度
  • 支持将结果以日志的形式输出到文件
Author: Loong716
Github: https://github.com/loong716
Usage: PortScan [-h Help] [-t IP/CIDR] [-p Ports] [-n Threads] [-o Output]

Options:
  -h    Print the help page.
  -t    Targets, Single IP or CIDR. Ex: 192.168.2.1 or 192.168.2.0/24
  -p    Port ranges. Ex: 1-65535 or 80,443 or 80,443,100-110
  -n    The Number of Goroutine, too large value is not recommended. (Default is 20)
  -o    Output file path. Ex: /tmp/result.txt or C:\Windows\Temp\result.txt

Usage

-h

打印帮助页面

-t

指定目标,支持单个IP或CIDR。例如: -t 192.168.2.1-t 192.168.2.0/24

-p

指定端口,支持单个端口、多个端口(以,分割)、端口范围(以-表示范围)。例如: -p 1-65535-p 80,443-p 80,443,100-110

-n

创建goroutine的数量,数量越大速度越快,但不建议使用数量过大的值。(默认为20,测试扫描一个c段的机器,每台机器10个端口,耗时约20s)

-o

输出文件的路径。例如:-o /tmp/result.txt-o C:\Windows\Temp\result.txt

Build

Windows:

# x64
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build PortScan.go

# x86
CGO_ENABLED=0 GOOS=windows GOARCH=386 go build PortScan.go

Linux:

# x64
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build PortScan.go

# x86
CGO_ENABLED=0 GOOS=linux GOARCH=386 go build PortScan.go

Mac OS:

# x64
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build PortScan.go

# x86
CGO_ENABLED=0 GOOS=darwin GOARCH=386 go build PortScan.go

About

使用golang开发的TCP端口扫描工具


Languages

Language:Go 100.0%