3 releases
0.1.2 | Jun 24, 2020 |
---|---|
0.1.1 | Apr 13, 2020 |
0.1.0 | Apr 12, 2020 |
#8 in #nmap
22KB
523 lines
Rustmap
Rustmap is a very simple "Nmap-like" program that can scan for hosts and open TCP ports. It is mostly written for educational purposes (I wanted to learn Rust, and learn a bit more about how Nmap works) so it's quite slow and doesn't have many features.
Installation
- Install Rust
cargo install rustmap
Examples
Check if a single host is up:
sudo rustmap 127.0.0.1
Scan all TCP ports for a single host:
sudo rustmap 127.0.0.1 -p
Scan all TCP ports for multiple hosts:
sudo rustmap 127.0.0.1 ::1 -p
Scan for specific ports in an address range:
sudo rustmap 127.0.0.0/8 -p 22,80,443
Usage
rustmap [OPTIONS] <addr-ranges>...
Flags
-h, --help
Prints help information
-V, --version
Prints version information
Options
-p, --ports <ports>...
Probe ports for each host and optionally specify which ports.
Ports can be specified as a comma-separated list, or left unspecified to scan all ports.
-t, --timeout <timeout>
Timeout for pinging each host and probing each port.
Parsing is provided by the parse_duration crate and supports almost any notation. E.g. 1s
, 10 seconds
, 1 hour, 15 minutes, 12 seconds
, 10m32s112ms
. [default: 1s
]
Args
<addr-ranges>...
IP addresses to scan.
Supports IPv4 notation (e.g. 127.0.0.1
), IPv6 notation (e.g. ::1
), IPv4-mapped IPv6 notation (e.g. ::ffff::1.1.1.1
) and CIDR notation (e.g. 192.168.0.0/16
, fe80::/10
).
License
Dependencies
~5–7MB
~120K SLoC