RustScan — Network Analysis and Diagnostics
Latest Tool Guides / Network Analysis and Diagnostics / rustscan.html
A blazing-fast Rust-based port scanner that scans 65,535 ports in 3 seconds. Automatically delivers results to nmap.
Basic Information
| Program Name | RustScan |
|---|---|
| One-Line Summary | A blazing-fast Rust-based port scanner that scans 65,535 ports in 3 seconds. Automatically delivers results to nmap. |
| Development & Maintenance | Bee (bee-san) and community |
| Official Website | https://github.com/bee-san/RustScan |
| Official Documentation | https://github.com/bee-san/RustScan/wiki |
| Official Download | https://github.com/bee-san/RustScan/releases |
| Supported Operating Systems | Linux, macOS, Windows, Docker |
| License | GPL-3.0 |
| Stable Version | 3.0.x — Verified 2026-10-18 |
| GitHub Repository | https://github.com/bee-san/RustScan |
| Classification | Network Analysis & Diagnostics (Tags: port scanner, nmap, fast scan, Rust, security audit) |
What is this program?
RustScan is a blazing-fast port scanner written in Rust. It scans all 65,535 TCP ports in about 3 seconds to identify open ports, then automatically passes the results to nmap for in-depth analysis of service versions, OS, and more.
Its core value is reducing what traditionally takes tens of minutes for a full nmap port scan down to just a few seconds. It allows adjusting scan speed, processing thousands of ports per second on stable networks.
What problem does it solve?
- Used when you need to quickly check which ports are open on a server.
- Acts as a primary scanner when a full nmap port scan is too slow.
- Verifies that firewall rules are correctly implemented before deployment.
- Used during security audits to quickly list exposed ports.
Key Features
Blazing-Fast Full Port Scan
Completes a full port scan, which takes most other scanners tens of minutes, in just a few seconds.
- Use Case: Used to quickly check for open ports immediately after deployment.
- Result Obtained: A scan of 65,535 ports completes within 3-10 seconds.
- Limitation: False positives may increase on unstable networks.
Automatic nmap Integration
Automatically passes discovered open ports to nmap for service detection.
- Use Case: Used to run service version and OS detection in one go after finding ports.
- Result Obtained: The rustscan primary → nmap secondary analysis is automated.
- Limitation: nmap must be installed.
CIDR & File Input
Allows inputting IP ranges (CIDR) or IP list files all at once.
- Use Case: Used to batch scan all open ports across a subnet.
- Result Obtained: Can scan hundreds of hosts simultaneously.
- Limitation: Caution is needed for network load during large-scale scans.
IPv6 Support
Supports scanning for both IPv4 and IPv6.
- Use Case: Used to check environments configured with IPv6 services.
- Result Obtained: Can identify port exposure status for both IPv4/IPv6.
- Limitation: IPv6 scan results may vary depending on the network environment.
Installation & Execution
cargo (Build from Source)
The fastest method to install in a Rust environment.
cargo install rustscan
# Or download binary from GitHub releases
curl -sL https://github.com/bee-san/RustScan/releases/latest/download/rustscan-ubuntu-latest.tar.gz \
| tar xz -C /tmp
sudo mv /tmp/rustscan /usr/local/bin/rustscan
Docker
Run in an isolated environment using Docker.
docker pull rustscan/rustscan:latest
docker run -it --rm rustscan/rustscan:latest -a 192.168.1.1
Ubuntu / Debian (Without cargo)
Download the binary and add it to your PATH.
# Download the appropriate architecture binary from the GitHub Releases page
chmod +x rustscan
sudo mv rustscan /usr/local/bin/
# Verify installation
rustscan --version
Practical Usage Examples
Basic Port Scan
Quickly find open ports on a target host.
# Basic scan (top 1000 ports)
rustscan -a 192.168.1.1
# Scan all 65535 ports
rustscan -a 192.168.1.1 -- -p-
Automatic nmap Integration Scan
Perform in-depth analysis of open ports with nmap.
# Automatically pass rustscan results to nmap
rustscan -a example.com -- -sV -sC -oN nmap-result.txt
# -sV: Service version, -sC: Default scripts, -oN: Save to file
CIDR Range Batch Scan
Check open ports across an entire subnet.
# Scan a subnet by CIDR
rustscan -a 10.0.0.0/24 --top 100
# Scan using an IP list file
rustscan -a hosts.txt --greppable