# netwatch ### Stockwerksplan (SVG) - Pro Stockwerk ein SVG - Enthält: - Räume (benennbar, nummerierbar) - Netzwerkdosen (frei platzierbar) - Elemente sind: - Verschiebbar - Nachträglich anpassbar - Eindeutig referenzierbar ### Netzwerkdose - Name / Nummer - Raum - Anzahl Ports - Porttypen (z. B. RJ45, Glasfaser, BNC) - Ports sind vollständig normale Ports im System --- ## Gerätetypen ### Gerätetyp Definiert das **Aussehen und die Port-Geometrie** eines Geräts. **Attribute** - Name - Kategorie: - Switch - Server - Patchpanel - Sonstiges - Darstellung: - SVG **oder** - JPG/PNG ### Portdefinition im Bild Beim Anlegen eines Gerätetyps: - Bild wird angezeigt - Ports werden per Klick gesetzt: - X/Y relativ zum Bild - Portname - Porttyp - Diese Portdefinition ist die Vorlage für alle Geräte dieses Typs --- ## Geräte ### Gerät Instanz eines Gerätetyps. **Attribute** - Name - Gerätetyp - Standort / Rack / Stockwerk - Position im Rack: - Start-HE - Höhe in HE - Seriennummer (optional) - Kommentar Ports werden automatisch aus dem Gerätetyp erzeugt. --- ## Switches & Ports ### Ports - Name / Nummer - Porttyp (frei definierbar) - Geschwindigkeit(en) - Status (aktiv / deaktiviert) - VLAN-Zuweisung - Modus: - Access - Trunk - Hybrid - Custom (Freitext) --- ## Module (z. B. SFP, Spezialkarten) ### Modul Eigenständige Komponente, die in einen Port eingesetzt wird. **Eigenschaften** - Name - Typ (z. B. SFP, QSFP, BNC-Modul) - Kompatible Porttypen - Eigene Ports (z. B. LC Duplex) ### Logik ``` Switch-Port → Modul → Modul-Port → Verbindung ``` Module können selbst Ports besitzen und sind vollwertige Verbindungspartner. --- ## Verbindungstypen ### Verbindungstyp (frei definierbar) - Name - Medium: - Kupfer - Glasfaser - Koax - Sonstiges - Duplex: - Half - Full - Custom - Max. Geschwindigkeit (optional) - Darstellung: - Farbe - Linientyp (durchgezogen, gestrichelt) Beispiele: - RJ45 Cat6 - LC-LC Singlemode - BNC Token Ring - Proprietär XYZ --- ## Verbindungen ### Verbindung - Port A ↔ Port B - Verbindungstyp - VLAN(s) - Modus - Kommentar Verbindungen werden: - logisch gespeichert - grafisch in allen relevanten SVGs dargestellt --- ## Grafische Ansichten ### Rack-Ansicht (SVG) - Frontansicht mit HE-Raster - Geräte: - korrekt skaliert - drag & drop - Kabel: - Linien zwischen Portpunkten - Farbe gemäß Verbindungstyp - Hover zeigt Details --- ### Netzwerkansicht (Graph) - Geräte als Nodes - Verbindungen als Edges - Ports optional sichtbar - Layout: - automatisch (Force-Layout) - manuell verschiebbar - Filter: - VLAN - Verbindungstyp - Standort --- ### Stockwerks- & Raumansicht - SVG-Plan pro Stockwerk - Netzwerkdosen: - anklickbar - Ports sichtbar - Verbindungen zu Racks / Switches darstellbar --- ## Datenbank (konzeptionell) ### Zentrale Tabellen - `locations` - `buildings` - `floors` - `rooms` - `floor_svgs` - `network_outlets` - `device_types` - `device_type_ports` - `devices` - `device_ports` - `modules` - `module_ports` - `connection_types` - `connections` - `vlans` - `racks` Custom-Eigenschaften werden teilweise als JSON gespeichert, um Erweiterungen ohne Schema-Brüche zu ermöglichen. --- ## Erweiterbarkeit Geplant, aber nicht initial: - Mehrbenutzerfähigkeit - Historisierung / Änderungsverlauf - Rechte & Rollen - Export (JSON, CSV, PDF) - Theming / Design-System - API --- ## Projektphasen ### Phase 1 – Fundament - Docker Compose - Basisdatenbank - CRUD für: - Verbindungstypen - Gerätetypen - Standorte ### Phase 2 – Grafik & Geräte - Gerätetyp-Editor mit Port-Klick - Rack-Ansicht - Geräteplatzierung ### Phase 3 – Verkabelung - Verbindungslogik - Module - VLANs - Visuelle Kabeldarstellung ### Phase 4 – Gebäudepläne - Stockwerks-SVG - Räume - Netzwerkdosen - Verknüpfung mit Geräten --- ## Zielzustand Ein zuverlässiges, verständliches und visuell präzises Werkzeug zur Netzwerkdokumentation, das **nicht einschränkt**, sondern reale, auch unkonventionelle Infrastrukturen korrekt abbilden kann.