Files
2026-06-09 18:40:21 +02:00

6.3 KiB


title: WatchYourLAN created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, monitoring, reseau, scanner, ip, go, beginner, homelab] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Monitoring, https://github.com/aceberg/WatchYourLAN]

📊 WatchYourLAN

Le scanner réseau léger avec web GUI : détecte qui est connecté sur votre LAN en temps réel. Idéal pour le homelab : voir les IPs, MAC, et hosts présents, même ceux qui n'apparaissent pas dans votre box.

📋 Informations Générales

Champ Valeur
Site web (GitHub)
GitHub aceberg/WatchYourLAN
License MIT
Langage Go
Étoiles GitHub 7 025
Dernière MAJ 2026-06-06
Catégorie [[cat-monitoring

📝 Description

WatchYourLAN n'est pas un outil de monitoring de services classique : c'est un scanner réseau ARP qui vous dit quelles machines sont actuellement connectées à votre réseau local. Là où votre box internet ne montre que les baux DHCP actifs, WatchYourLAN scanne en continu les tables ARP et vous présente l'historique des connexions : qui s'est connecté, quand, avec quelle IP et quelle MAC.

C'est l'outil parfait pour les homelabeurs qui veulent savoir :

  • Quels appareils sont actuellement sur le réseau (IoT, invités, intrus potentiels)
  • Quelles IPs ont été attribuées à quelles machines
  • Détecter un appareil inconnu (nouvelle MAC, nouvelle IP)
  • Surveiller la présence d'un serveur (est-ce qu'il reboote tout seul ?)

L'interface est volontairement minimaliste : une page web qui liste les hosts connus et inconnus, avec date de dernière vue et bouton « alertes ».

  • Scan ARP en continu : intervalle configurable (1 min par défaut)
  • Détection IP + MAC : table des hôtes actifs
  • Historique : qui était connecté quand (last seen, first seen)
  • Détection de nouveaux hôtes : alerte quand un appareil inconnu apparaît
  • Notifications : Telegram, Gotify, Ntfy, Slack, Discord, Email, Webhook
  • Web UI simple : page HTML statique, lookup en JS
  • Pas de base de données : stockage fichier plat (JSON)
  • Binaire Go statique : ARM64, ARMv7, x86_64 — tourne sur Raspberry Pi
  • Docker multi-arch
  • Config via fichier (YAML) ou variables d'environnement

Public cible : homelabeurs et admins réseau qui veulent voir qui est sur le LAN sans configurer un Nagios ou un NetBox complet. Si vous voulez scanner des sous-réseaux distants ou faire du port scanning, c'est pas le bon outil : partez sur app-zabbix ou des outils type nmap.

🚀 Installation

Option 1 : Docker Compose

# docker-compose.yml
version: '3.8'
services:
  watchyourlan:
    image: aceberg/watchyourlan:latest
    container_name: watchyourlan
    restart: unless-stopped
    # network_mode: host est RECOMMANDÉ pour le scan ARP
    network_mode: host
    environment:
      - IFACE=eth0
      - TZ=Europe/Paris
      - NOTIF_TG_CHATID=...
      - NOTIF_TG_TOKEN=...
      - GUI=YES
    volumes:
      - wyl-config:/config

volumes:
  wyl-config:

⚠️ Le mode network_mode: host est indispensable : le scan ARP se fait via raw sockets, ce qui ne fonctionne pas avec le bridge Docker. Sur Synology/QNAP, prévoir un lancement direct du binaire.

Option 2 : Binaire natif (Raspberry Pi, routeur, etc.)

wget https://github.com/aceberg/WatchYourLAN/releases/latest/download/watchyourlan_0.7.0_Linux_arm64.tar.gz
tar xzf watchyourlan_*.tar.gz
cd WatchYourLAN
./watchyourlan -if eth0 -g

⚙️ Configuration Initiale

  1. Identifier l'interface réseau à scanner (ip a pour la trouver)
  2. Lancer WatchYourLAN avec l'option -if eth0 (ou IFACE=eth0 en env)
  3. Accéder à l'UI : http://IP-DE-VOTRE-HOST:8847
  4. Visiter l'UI pour voir la liste des hosts détectés
  5. Configurer les notifications : copier config/gotify.env et adapter
  6. Tester le scan : redémarrer un appareil du LAN et vérifier qu'il est marqué « up »

🔄 Alternatives

Open Source

  • arpwatch — Le grand-père, CLI, log mail uniquement
  • NetBox — IPAM complet (beaucoup plus lourd, source de vérité)
  • Pi.Alert (fork de WatchYourLAN enrichi) — Plus de features
  • NetAlertX — Plus avancé (notifications multiples, web UI plus riche)
  • Nmap + script — Pour du scan ponctuel, pas continu

Comparaison WatchYourLAN vs autres

Critère WatchYourLAN arpwatch NetBox Pi.Alert
Self-hosted
Web UI
Historique
Alertes ⚠️ mail
Setup 5 min 10 min 30 min 5 min
Empreinte ~10 Mo < 1 Mo 1 Go+ ~50 Mo
IPAM ⚠️
Binaire Go (C) (Python) (Python)

Verdict : pour un simple « qui est sur mon réseau » avec un binaire Go qui tourne sur n'importe quoi, WatchYourLAN est imbattable. Pour de l'IPAM professionnel ou de l'inventaire complet, passez sur NetBox.

Propriétaires (ce que WatchYourLAN remplace)

  • Fing (mobile, freemium) — Le même usage en app mobile
  • NetSpot (Windows) — Scanner Wi-Fi commercial
  • Solarwinds IPAM (enterprise, $$$)
  • PRTG Network Monitor (freemium)

🔐 Sécurité

  • Pas d'auth par défaut : à protéger par un reverse proxy (app-traefik) ou un tunnel SSH
  • HTTPS recommandé via app-traefik
  • Web UI statique : pas de session, pas de cookie
  • Notifications : tokens stockés en variables d'environnement (volatiles par défaut)
  • Scan ARP : passif, ne génère pas de trafic intrusif sur le réseau

📚 Ressources

Pages Liées