Hostname (Systemeinstellungen, neben Pruefintervall):
- hostnamectl set-hostname ueber die App, Validierung (RFC-1123-artiges
Label), kein Revert-Timer noetig (kappt die Erreichbarkeit nicht wie
eine IP-Aenderung). Live getestet inkl. Validierung und Revert.
DHCP: Range ist jetzt Pflicht, kein geratener Default mehr:
- dhcp_range_start/end/dns starten leer (Platzhaltertext statt fake-
echt aussehendem Default) - ein Zufalls-Range haette den Dienst sonst
unbemerkt mit einer zum echten Netz nicht passenden Konfiguration
starten lassen koennen.
- write_dhcp_file und dhcp_service_action=enable_restart verweigern sich
ohne eingetragene Range; _render_kea_config laesst "pools" ohne Range
komplett weg statt einen kaputten Pool-String zu erzeugen.
- Neues, separates dhcp_gateway-Feld (optional) fuer einen vom
automatisch erkannten Gateway abweichenden Router fuer die Clients.
Topbar-Ampel fuer den Kea-Dienst:
- Gruener/roter Punkt neben dem Pruefintervall-Timer, nur sichtbar mit
settings_dhcp.view (ein einzelner, kurzer systemctl-Aufruf pro Request,
nicht die volle Status-Erkennung). Live verifiziert (rot wenn gestoppt,
gruen wenn gestartet).
Reservierungstabelle zeigt jetzt pro Client, welche eigene DHCP-Option
greift (global oder Client-Override, mit Wert im Tooltip).
Text-Straffung: die laengsten Hint-Texte und Code-Kommentare in
Templates/app.py gekuerzt (u.a. groups.html, settings_dhcp.html,
account.html, devices/switches/users/credentials.html, zwei grosse
Migrations-/DHCP-Kommentarbloecke in app.py) - Kernaussagen erhalten,
Redundanz entfernt.
Quelltext-Huerde (KEINE echte Sicherheit, nur Abschreckung): Rechtsklick
und DevTools-/Quelltext-Shortcuts per JS blockiert. Klar dokumentiert
in Kommentar + README, dass der Browser HTML/CSS/JS immer vollstaendig
ausliefert und das in Sekunden umgehbar ist - echte Absicherung bleiben
ausschliesslich die serverseitigen Rechteprüfungen.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>