# README
gns
A pretty fast network scan tool written with golang, it scans all opening ports on the target network.
Quick view
Install
- With go
go get -u github.com/zhangsean/gns
- With docker
docker pull zhangsean/gns
docker run -it --rm zhangsean/gns -p 80,443 10.0.1.1
- Manual install
Download pre build packages from releases
Usage
Go network scan tool.
Version: v0.9.1
Usage: gns [Options] <IP range or domain>
eg: gns -p 22-8080 -s 300 10.0.1.1-100
gns -p 80,443 10.0.1.0/24
gns -g 10.0.1.0/24
gns www.google.com
Options:
-a All ports, 1-65535
-c Show network connecting cost time
-d Debug, show every scan result, instead of showing open port only
-g Ping check
-h Show help
-p string
Specify ports or port range. eg. 80,443,8080 or 80-8080 (default "21,22,23,53,80,135,139,443,445,1080,1433,1521,3306,3389,5432,6379,8080")
-s int
Parallel scan threads (default 200)
-t int
Connect timeout, ms (default 1000)
-v Show version
# Functions
AppendPort Append scan aim port with checking valid.
AppendStatus Append scan result with lock.
CheckPing ping ip.
CheckPort check network port connectable or not.
IPIntToString Convert IP int to string.
IPStringToInt Convert IP string to int.
# Structs
TCPAddrStatus TCPAddr with scan result.