c317147ca4
- **Discovery:** Unterstützung für Multi-Interface-Broadcast und manuelle IP-Eingabe. - **UI:** Chat-Test für Verbindungsprüfung hinzugefügt. - **ViewModel:** Datenübertragungslogik (Ping/Pong, Chat) implementiert. - **Workflow:** Windows-MSI-Build als separaten Job hinzugefügt. Signed-off-by: StefanMoCoAt <stefan.mo.co@gmail.com>
1.7 KiB
1.7 KiB
ADR-0027: Netzwerk-Discovery & Interface-Binding
Status
Akzeptiert & Implementiert (05.05.2026)
Kontext
Desktop-Rechner auf Turnieren sind oft mit mehreren Netzwerken gleichzeitig verbunden (z.B. LAN für das Turnier-Netzwerk, WLAN für Internet-Hotspot). Automatische Discovery-Dienste (mDNS) wählen ohne explizite Konfiguration oft ein Interface, das für die anderen Teilnehmer nicht erreichbar ist (Bridging-Probleme zwischen LAN und WLAN). Zudem blockieren einige Router Multicast-Pakete zwischen WLAN und LAN-Segmenten.
Entscheidung
Wir führen ein robustes, mehrstufiges Netzwerk-Management für die Initialisierung ein:
- Multi-Interface Broadcast: Der Master registriert seinen Dienst proaktiv auf allen verfügbaren Netzwerk-Interfaces (IPv4). Dies erhöht die Chance massiv, dass Clients in verschiedenen Segmenten (WLAN/LAN) den Master finden.
- Interface-Selektion: Der Benutzer kann weiterhin ein bevorzugtes Interface wählen. Die Master-Info-Card zeigt die Erreichbarkeit transparent an.
- Manueller IP-Fallback: Wenn mDNS fehlschlägt, kann die IP des Masters manuell eingegeben werden. Dies ist der " Ultima-Ratio"-Weg für restriktive Netzwerke.
- Konnektivitäts-Check (Chat & Self-Test): Nach dem Handshake wird ein Modal geöffnet, das einen automatischen Ping-Pong Test durchführt und einen Test-Chat bietet. Dies verifiziert die reale Datenübertragung (Serialisierung, WebSockets) noch vor Abschluss des Setups.
Konsequenzen
- Deutlich höhere Stabilität in heterogenen Netzwerkumgebungen.
- Transparenteres Feedback für den Anwender bei Verbindungsproblemen.
- Der Chat dient als "Connectivity-Proof" für das Support-Personal vor Ort.