Packages and Binaries:
rustscan
Modern Port Scanner
The Modern Port Scanner. Find ports quickly (3 seconds at its fastest). Run
scripts through our scripting engine (Python, Lua, Shell supported).
- Scans all 65k ports in 3 seconds.
- Full scripting engine support. Automatically pipe results into Nmap, or use our scripts (or write your own) to do whatever you want.
- Adaptive learning. RustScan improves the more you use it. No bloated machine learning here, just basic maths.
- The usuals you would expect. IPv6, CIDR, file input and more.
- Automatically pipes ports into Nmap.
Installed size: 4.50 MB
How to install: sudo apt install rustscan
Dependencies:
- libc6
- libgcc-s1
rustscan
root@kali:~# rustscan -h
rustscan 2.3.0
Fast Port Scanner built in Rust. WARNING Do not use this program against
sensitive infrastructure since the specified server may not be able to handle
this many socket connections at once. - Discord <http://discord.skerritt.blog>
- GitHub <https://github.com/RustScan/RustScan>
USAGE:
rustscan [OPTIONS] [-- <COMMAND>...]
OPTIONS:
-a, --addresses <ADDRESSES>
A comma-delimited list or newline-delimited file of separated CIDRs,
IPs, or hosts to be scanned
-p, --ports <PORTS>
A list of comma separated ports to be scanned. Example: 80,443,8080
-r, --range <RANGE>
A range of ports with format start-end. Example: 1-1000
-n, --no-config
Whether to ignore the configuration file or not
--no-banner
Hide the banner
-c, --config-path <CONFIG_PATH>
Custom path to config file
-g, --greppable
Greppable mode. Only output the ports. No Nmap. Useful for grep or
outputting to a file
--accessible
Accessible mode. Turns off features which negatively affect screen
readers
--resolver <RESOLVER>
A comma-delimited list or file of DNS resolvers
-b, --batch-size <BATCH_SIZE>
The batch size for port scanning, it increases or slows the speed of
scanning. Depends on the open file limit of your OS. If you do 65535
it will do every port at the same time. Although, your OS may not
support this [default: 4500]
-t, --timeout <TIMEOUT>
The timeout in milliseconds before a port is assumed to be closed
[default: 1500]
--tries <TRIES>
The number of tries before a port is assumed to be closed. If set to
0, rustscan will correct it to 1 [default: 1]
-u, --ulimit <ULIMIT>
Automatically ups the ULIMIT with the value you provided
--scan-order <SCAN_ORDER>
The order of scanning to be performed. The "serial" option will scan
ports in ascending order while the "random" option will scan ports
randomly [default: serial] [possible values: serial, random]
--scripts <SCRIPTS>
Level of scripting required for the run [default: default] [possible
values: none, default, custom]
--top
Use the top 1000 ports
-e, --exclude-ports <EXCLUDE_PORTS>
A list of comma separated ports to be excluded from scanning. Example:
80,443,8080
-x, --exclude-addresses <EXCLUDE_ADDRESSES>
A list of comma separated CIDRs, IPs, or hosts to be excluded from
scanning
--udp
UDP scanning mode, finds UDP ports that send back responses
-h, --help
Print help
-V, --version
Print version
Updated on: 2026-Sep-03