Monitoring van apparaten in het interne klantennetwerk via een LAN agent
· 7 min lezen
Kort gezegd Cloud monitoring bereikt geen apparaten in het interne klantennetwerk - NAS, camera's, lokale servers, printers. De LAN agent van ePulz.io lost dit op met een pull model: een kleine daemon in je netwerk belt ePulz.io via normaal HTTPS, ontvangt een lijst met te controleren IP's, pingt ze lokaal en stuurt de resultaten terug. Geen port forwarding, geen VPN, geen open poorten van buitenaf.
Het probleem: de cloud ziet niet naar binnen
Klassieke uptime monitoring draait in een datacenter. Voor publiek toegankelijke websites werkt het uitstekend - een HTTP verzoek van Frankfurt naar je hosting en terug. Het probleem begint zodra je iets wilt monitoren wat van buiten niet zichtbaar is:
- Een NAS met backups (
192.168.1.10) - Interne Grafana / Prometheus / Jira op
10.0.0.50:3000 - IP camera's in de winkel, IoT gateways, netwerkprinters
- Een router of switch waarvan je wilt weten wanneer hij uitvalt
- VPN gateway, RADIUS server, lokale DNS
Gangbare oplossingen komen met ongemakkelijke compromissen:
- Port forwarding - je opent een publieke poort op de router, monitoring verbindt via het publieke IP. Veiligheidsnachtmerrie, vaak tegen het bedrijfsbeleid.
- VPN tunnel tussen monitoring en het klantennetwerk - werkt, maar vereist setup aan IT-zijde, statische peer configuratie en doorlopend onderhoud.
- Cron op de klantserver die de monitoring pingt - een heartbeat. Werkt, maar zegt alleen dat de agent leeft, niet of een specifiek doel in het netwerk bereikbaar is.
De oplossing: agent in pull model
De LAN agent van ePulz.io draait de communicatierichting om. In plaats van dat de server zich het klantennetwerk in dringt, contacteert een eenvoudige daemon in het klantennetwerk zelf de server. Het principe:
- Elke 30 seconden vraagt de agent: "Welke monitors moet ik nu controleren?"
- De server stuurt een lijst terug (bijvoorbeeld: ping
192.168.1.10elke minuut, TCP192.168.1.50:5432elke 5 minuten). - De agent voert de lokale controles uit (ICMP ping, TCP connect, HTTP GET).
- De agent stuurt de resultaten terug via dezelfde HTTPS verbinding.
- Bij toestandwijziging (UP → DOWN of terug) triggert ePulz.io de standaard notificatie - email, Telegram of webhook.
Alle communicatie loopt via uitgaand HTTPS op poort 443. Precies de poort die je router open heeft voor de browser. Geen forwards, geen inkomend verkeer, geen VPN.
Drie soorten LAN controles
| Type | Doel | Gebruik |
|---|---|---|
| lan_ping | 192.168.1.10 | Apparaat in het netwerk is actief (ICMP echo). Goedkoopste controle, ziet RTT met sub-milliseconde precisie. |
| lan_tcp | 10.0.0.50:5432 | Een specifieke poort reageert (DB, SSH, SMTP, RDP). Detecteert wanneer het proces ligt, ook al draait de host. |
| lan_http | http://nas.local | Webinterface werkt (HTTP 2xx/3xx). NAS GUI, intern dashboard, lokale API. |
Installatie: twee varianten
Voor een Linux server met root toegang (Raspberry Pi, mini PC, VM in het netwerk):
sudo bash <(curl -s https://epulz.io/install-agent.sh) plzag_xxx
Het script installeert de agent in /opt/epulzio-agent en registreert hem als systemd service. Hij start zelf na een reboot.
Voor Synology / Unraid / k3s / Docker hosts:
docker run -d --name epulzio-agent --restart unless-stopped \
--network host \
-e EPULZIO_AGENT_TOKEN=plzag_xxx \
epulzio/agent
--network host is belangrijk - de agent heeft toegang nodig tot het lokale netwerk van de host.
Wat gebeurt er als de agent stilvalt
Dit is een vaak vergeten scenario bij eigen setups: de agent stopt met werken (netwerk, stroomstoring, kernel panic), de monitor blijft voor altijd op "last_status: up" en niemand merkt het. ePulz.io lost dit op met aparte heartbeat logica:
- Elk succesvol agent verzoek werkt
last_seenbij. - Een scheduler controleert actieve agents elke minuut. Als
last_seenouder is dan 5 minuten, gaat email en Telegram bericht uit: "LAN agent X is offline". - Als de agent terugkomt, krijg je een back-online notificatie.
Hierdoor beland je nooit in de toestand "alles ziet er groen uit omdat er niets wordt gemeten".
Beveiliging
- Token authenticatie: de agent authentificeert via
X-Agent-Token: plzag_…. We bewaren alleen de SHA-256 hash in de DB; het platte token zie je eenmalig bij aanmaken. - Op elk moment intrekken vanuit het dashboard. Na intrekking krijgt de agent HTTP 401 en stopt met taken aannemen.
- Per-agent rate limit: 120 verzoeken per minuut. Beschermt de server tegen vastgelopen of buggy agents.
- Geen credentials direct in het script: het token staat in
/opt/epulzio-agent/agent.envmet permissies 0600.
Wanneer je geen LAN agent nodig hebt
Als je alleen publieke websites, API's en SSL certificaten monitort, zijn de klassieke ePulz.io cloud probes voldoende. De LAN agent heeft zin wanneer:
- Je meerdere klanten beheert en monitoring van hun interne systemen wilt aanbieden.
- Je een hybride architectuur hebt (deels cloud, deels on-prem) en een enkel status board wilt.
- Je sub-milliseconde RTT metingen op de LAN nodig hebt die je via internet niet krijgt.
Aan de slag
De LAN agent is beschikbaar in alle plannen inclusief de proefperiode. De installatie duurt drie minuten:
- Maak een agent aan in dashboard → LAN agents.
- Kopieer het token (wordt eenmalig getoond).
- Voer de installer uit op een machine in het klantennetwerk.
- Voeg een LAN monitor toe via "Nieuwe monitor toevoegen" en kies type
lan_ping,lan_tcpoflan_http.
Probeer gratis
7 dagen volledige toegang inclusief LAN agents. Geen kaart. Geen automatische verlenging.
Probeer ePulz.io gratis - 7 dagen zonder creditcard.
Account aanmaken