While I was in the US Army from 2002 to 2013 we regularly used a simple network monitoring program called SNMPc, created by a company called Castlerock. While it had some advanced features, we generally just used it as a simple icmp check. Green icon for up, red icon for down. The software itself looks very old (think windows 3.1 if you can) I decided I wanted something similar for my network, so I started work on a web based project to do the same thing and this is the result. It was written for me based on what I wanted, but a friend asked if he could get a copy, so I decided to publish.
While I am happy to entertain ideas for new features, I made this for me, so if I don't see a use I won't work on something. If you still want the change, submit a fully tested PR and I'm happy to entertain pulls.
Some functions are purely written using claude.ai as I am brand new to react/js after a couple khan academy classes. disclaimer: this is pretty much fully rewritten using claude.ai now after asking it to optimize my code for efficiency
docker run example:
docker run -d \
--name=network-monitor \
-e CONFIG_FILE=/config/network-monitor/config.json \
-e DEBUG_MODE=false \
-p 5000:5000 \
-v /path/to/config.json:/config/network-monitor/config.json \
--restart unless-stopped \
ghcr.io/drizuid/network-monitor:latestdocker compose example:
---
services:
network-monitor:
image: ghcr.io/drizuid/network-monitor:latest
container_name: network-monitor
environment:
- CONFIG_FILE=/config/network-monitor/config.json
- DEBUG_MODE=false
volumes:
- /path/to/config.json:/config/network-monitor/config.json
ports:
- 5000:5000
restart: unless-stoppedNotes:
- Use:
- Load it up, you'll have example "nodes." You can remove those nodes by hovering and clicking the red x.
- You can remove "links" by clicking the red x.
- You can remove boxes by clicking the red x.
- You can not edit existing items, you would need to remove and re-add.
- you can add new items, links, or boxes at the top right of the screen.
- If you use VLANs and the application's host, container, or VM can't reach the other VLANs via ICMP, you won't be able to monitor those nodes, this isn't a bug, it's just common sense.
- If you run this in a container and want to monitor the docker host, localhost will be the container itself, not the host, this isn't a bug, it's just common sense.
- Objects are persistently stored in config.json as long as you properly mount the file from your host.
- I will not add authentication or https support to this app, use a reverse proxy like SWAG