network monitoring service that performs automated ICMP discovery, continuous ping monitoring and SNMP metadata collection with time-series storage in InfluxDB.
1. Clone the Repository
git clone https://github.com/kljama/netscan.git
cd netscan2. Create Configuration File
cp config.yml.example config.yml3. Edit Your Network Configuration
Open config.yml and modify the networks: section:
networks:
- "192.168.1.0/24" # Replace with YOUR actual network range
- "10.0.50.0/24" # Add additional ranges as neededUse ip addr (Linux) or ipconfig (Windows) to determine your network range.
4. (Optional) Configure Production Credentials
For production deployments, create a .env file to override default credentials:
cp .env.example .env
# Edit .env with your secure credentialsSee MANUAL.md for details.
5. Start the Service
docker compose up -dThis starts both netscan and InfluxDB v2.7 using default credentials (suitable for testing).
View Logs:
docker compose logs -f netscanCheck Health Status:
curl http://localhost:8080/healthAccess InfluxDB UI (optional):
Navigate to https://localhost in your browser
Self-Signed Certificate Warning:
- Username:
admin - Password:
admin123 - Organization:
test-org
Stop (keeps data):
docker compose downStop and delete all data:
docker compose down -vFor detailed configuration, performance tuning, troubleshooting, and advanced deployment options, see MANUAL.md.
Alternative Deployment: A native systemd deployment option is available for maximum security (runs as non-root with capability-based ICMP access). See MANUAL.md for instructions.
MIT License - See LICENSE.md