Description
Simple command line tool to scan network ports. Command line tool was done as part of technical interview and as example for article on HabraHabr.ru.
The main requirement for the tool to accept individual IP, range of IPs in regular format or CIDR (Classless Inter-Domain Routing). The utility are free to use or change.
There was no requirement to build like a package, but you can easily converted it. Enjoy coding.
Golang Network Port Scanner alternatives and similar packages
Based on the "Command Line" category.
Alternatively, view Golang Network Port Scanner alternatives based on common mentions on social networks and blogs.
-
urfave/cli
A simple, fast, and fun package for building command line apps in Go -
Rich Interactive Widgets for Terminal UIs
Terminal UI library with rich, interactive widgets — written in Golang -
gocui
Minimalist Go package aimed at creating Console User Interfaces. -
lipgloss
Style definitions for nice terminal layouts 👄 -
elvish
Powerful scripting language & Versatile interactive shell -
go-prompt
Building powerful interactive prompts in Go, inspired by python-prompt-toolkit. -
survey
A golang library for building interactive and accessible prompts with full support for windows and posix terminals. -
tcell
Tcell is an alternate terminal package, similar in some ways to termbox, but better in others. -
cointop
A fast and lightweight interactive terminal based UI application for tracking cryptocurrencies 🚀 -
pterm
✨ #PTerm is a modern Go module to easily beautify console output. Featuring charts, progressbars, tables, trees, text input, select menus and much more 🚀 It's completely configurable and 100% cross-platform compatible. -
progressbar
A really basic thread-safe progress bar for Golang applications -
kingpin
CONTRIBUTIONS ONLY: A Go (golang) command line and flag parser -
tui-go
Go UI library for building rich terminal applications. -
pflag
Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags. -
The Platinum Searcher
A code search tool similar to ack and the_silver_searcher(ag). It supports multi platforms and multi encodings. -
asciigraph
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies. -
readline
Readline is a pure go(golang) implementation for GNU-Readline kind library -
Git Town
Additional Git commands for easier branch management and support for stacked changes -
uiprogress
A go library to render progress bars in terminal applications -
dotenv-linter
⚡️Lightning-fast linter for .env files. Written in Rust 🦀 -
mitchellh/cli
A Go library for implementing command-line interfaces. -
uilive
uilive is a go library for updating terminal output in realtime -
docopt.go
A command-line arguments parser that will make you smile. -
CLI Color
🎨 Terminal color rendering library, support 8/16 colors, 256 colors, RGB color rendering output, support Print/Sprintf methods, compatible with Windows. GO CLI 控制台颜色渲染工具库,支持16色,256色,RGB色彩渲染输出,使用类似于 Print/Sprintf,兼容并支持 Windows 环境的色彩渲染 -
termenv
Advanced ANSI style & color support for your terminal applications -
aurora
Golang ultimate ANSI-colors that supports Printf/Sprintf methods -
ov
🎑Feature-rich terminal-based text viewer. It is a so-called terminal pager. -
liner
Pure Go line editor with history, inspired by linenoise -
complete
bash completion written in go + bash completion for go command -
cli-init
The easy way to build Golang command-line application. -
hostctl
Your dev tool to manage /etc/hosts like a pro! -
mow.cli
A versatile library for building CLI applications in Go -
flaggy
Idiomatic Go input parsing with subcommands, positional values, and flags at any position. No required project or package layout and no external dependencies. -
cli
CLI - A package for building command line app with go
InfluxDB - Power Real-Time Data Analytics at Scale
Do you think we are missing an alternative of Golang Network Port Scanner or a related project?
README
Golang Network Port Scanner
Simple command line tool to scan network ports. Command line tool was done as part of technical interview and as example for article on HabraHabr.ru.
The main requirement for the tool to accept individual IP, range of IPs in regular format or CIDR (Classless Inter-Domain Routing). The utility are free to use or change.
There was no requirement to build like a package, but you can easily converted it. Enjoy coding.
Example
$ ./netscanner --ip 10.0.1.1-10.0.1.11,10.0.1.12/32 --p 80 --pc tcp,udp --t 3000
Parameters:
NAME:
NetScanner - Network IP addresses and ports scanner
USAGE:
netscanner [global options] command [command options] [arguments...]
AUTHOR:
Valentyn Ponomarenko <[email protected]>
COMMANDS:
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--ip value IP range, e.g --ip 127.0.0.1/12, 10.0.1.1-10.0.1.12
--protocol value, --pc value protocol for IP(s) scan, e.g --pc tcp (default: "tcp,udp")
--port value, -p value port range to scan, e.g --port 1-200 (default: "1-65535")
--timeout value, -t value timeOut n milliseconds, e.g. --t 3000 or --t 2s or --t 3000ms (default: "2000")
--help, -h show help
--version, -v print the version
Output:
......
2018/03/19 23:40:20 scanning addr: tcp://10.0.1.1:138
2018/03/19 23:40:20 scanning addr: tcp://10.0.1.1:139
2018/03/19 23:40:20 tcp://10.0.1.1:139 is alive and reachable
......
Contributing
We welcome pull requests, bug fixes and issue reports.
Before proposing a change, please discuss your change by raising an issue.
Authors
- Valentyn Ponomarenko - Initial work - P-A-R-U-S
License
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
*Note that all licence references and agreements mentioned in the Golang Network Port Scanner README section above
are relevant to that project's source code only.