Concurrent Host/IP Prober with custom DNS resolution, port scanning, ping and curl support
- Live terminal summary — progress bar, stats, and per-IP results update in real time
- CIDR expansion — sweep entire subnets like
10.0.0.0/24natively - Concurrent probing — tunable worker pool, non-blocking by default
- Multiple check modes — multi port, ICMP ,ping, and HTTPS curl independently toggled
- Structured output — results written to separate files as they land, no waiting
- Support ip v4&v6
- Detect Providers
# npm
npm install -g netprober
# pnpm
pnpm add -g netprober
# bun
bun add -g netproberThen use it anywhere:
netprober --helpRequires Bun — install it first
git clone https://github.com/maanimis/netprober
cd netprober
bun ./src/index.ts --helpA standalone binary is available for Linux x86-64 (amd64) — no Node, no Bun required.
- Head to the Releases page
- Download
netprober-linux-amd64 - Make it executable and run:
chmod +x netprober-linux-amd64
./netprober-linux-amd64 --help
⚠️ Onlylinux/amd64is currently available as a prebuilt binary. For other platforms, use the npm package or run with Bun directly.
netprober [options]| Flag | Description | Default |
|---|---|---|
-i, --input <file> |
Input hosts file | hosts.txt |
--output-ping <file> |
Ping-up IPs output file | ping_up.txt |
--output-ports <file> |
Open ports IPs output file | ports_open.txt |
-r, --resolver <ip> |
DNS resolver to use | 127.0.0.1 |
-c, --concurrency <n> |
Concurrent workers | 10 |
-t, --timeout <s> |
Per-check timeout in seconds | 5 |
--ping-count <n> |
ICMP ping packet count | 3 |
--ping |
Enable ICMP ping checks | false |
--curl |
Enable HTTPS curl checks | false |
-v, --verbose |
Show all IPs, not just live ones | false |
-p, --ports |
ports (e.g. 80,443,8000-8100) | 443 |
Create a hosts.txt file — one host, IP, or CIDR range per line:
example.com
api.example.com
192.168.1.0/24
10.0.0.1
https://target.com/path ← URLs are sanitized automatically
# Basic — port 443(default) probe only
netprober -i hosts.txt
# Scan with multiport
netprober -i hosts.txt -p 443,8080,80,2080,2053
# Also can use range for ports(from 80 to 90)
netprober -i hosts.txt -p 80-90
# With ping + curl, using Google's DNS, 25 workers
netprober --ping --curl -r 8.8.8.8 -c 25
# Verbose output — show every IP, not just live ones
netprober -v --curl -t 3
# Sweep a CIDR range with curl enabled
netprober -i ranges.txt --curl -c 50
# Custom output files
netprober -i targets.txt -o live.txt --output-ports open_ports.txt| File | Contents |
|---|---|
ping_up.txt |
IPs responding to ICMP ping (requires --ping) |
ports_open.txt |
IPs with open ports |
All files are written in real time as results come in — no waiting for the run to finish.
MIT © maanimis
