Repository navigation
v0.2.0-Beta - Second Beta Release
Pre-release
Pre-release
·
25 commits
to main
since this release
v0.2.0-beta – Full Discovery + Port Scanning Release
Second beta release with full scanning and enrichment pipeline
Overview
This release introduces a complete two-phase scanning pipeline, with host discovery and port scanning modules fully integrated.
It builds upon the architecture of v0.1.0-beta, adding robust batching, dynamic resource control, and full database tracking.
Major Features
Host Discovery (Phase 1)
- New
IPScannerandIPManagermodules - Multi-probe liveness detection (ICMP, TCP SYN, TCP ACK with TTL)
- Batched and direct scan support depending on scan size
- WHOIS enrichment with support for RIX.is block files and live WHOIS lookups
- Encrypted host records stored in PostgreSQL
Port Scanning (Phase 2)
- New
PortScannerandPortManagerwithProbeHandlerlogic - Priority vs full-range port queues (configurable)
- Stealth connect-scanning using Nmap and FPE IP encryption
- Resilient handling of scan errors, closed ports, and unknown states
- Dynamic batching: per-port workers over live IPs
Queue + Worker Framework
- Complete RabbitMQ lifecycle:
- Queue declaration, deletion, draining, failure routing
- Worker orchestration with dynamic concurrency and load checking (CPU & memory thresholds)
- Resilient error logging, fallback mechanisms, and retry support
Database Integration
- Summary table auto-updated with scan metadata (timestamps, IP blocks, scanned ports)
- Host and Port tables updated via dedicated worker threads
- Automatic reconnection and retry logic for transient DB failures
Security & Config
- Full format-preserving encryption (FPE) for all IPs at rest
- Centralized config (
scan_config.py) with support for memory/CPU limits, batch sizes, delays - Secrets pulled securely from
.envusingdotenv
Stability and Scope
This version is functionally complete for scanning, queueing, enrichment, and DB I/O.
It remains a beta release — not yet production hardened, but architecturally stable.
Tag: v0.2.0-beta
Branch: master
Base: dev
Full Changelog: https://github.com/volvan/scanner/commits/v0.2.0-beta