Debian
b031725dfe
feat(routes): Static-Routes-Management + Live-View (Networks-Tab)
Migration 0019: static_routes (id, destination, gateway, dev, metric,
table_name, active, comment).
internal/services/staticroutes/:
- CRUD-Repo
- Generator schreibt /etc/edgeguard/routes.conf (pipe-format) und
triggert `sudo systemctl restart edgeguard-routes.service`
- LiveAll() ruft `ip -j route show table all` und parsed JSON
internal/handlers/routes.go:
GET /api/v1/routes — managed (DB)
POST/PUT/DELETE — CRUD (re-render + apply on mutate)
GET /api/v1/routes/live — kernel-state via ip(8)
postinst:
- /usr/sbin/edgeguard-apply-routes (root-owned shell-script). Liest
routes.conf, flusht `proto 250` (= edgeguard), setzt neue Routen
mit proto 250. Andere Quellen (kernel/dhcp/manuell) bleiben
unangetastet.
- /etc/systemd/system/edgeguard-routes.service (Type=oneshot,
After=network-online.target). Beim Boot automatisch via
multi-user.target.
- /etc/iproute2/rt_protos.d/edgeguard.conf — Symbol "edgeguard" =
250 damit `ip route show proto edgeguard` funktioniert.
(Debian 13 hat kein /etc/iproute2 default → .d-Pattern statt
rt_protos-Anhängen.)
- sudoers: edgeguard ALL=(root) NOPASSWD: /usr/bin/systemctl
restart edgeguard-routes.service
UI: Networks-Page jetzt mit Tabs (Interfaces + Routen). Routes-Tab
hat zwei Cards:
- Live-Routen (read-only, 30s refresh, `proto edgeguard` farblich
hervorgehoben)
- Verwaltete Routen (CRUD-Tabelle, Add/Edit-Modal mit destination/
gateway/dev/metric/table/active/comment)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 23:50:26 +02:00
..
2026-05-09 09:56:10 +02:00
2026-05-08 18:45:41 +02:00
2026-05-09 11:24:42 +02:00
2026-05-09 11:24:42 +02:00
2026-05-11 07:46:39 +02:00
2026-05-09 09:56:10 +02:00
2026-05-11 20:55:47 +02:00
2026-05-10 18:23:18 +02:00
2026-05-12 23:22:55 +02:00
2026-05-09 11:52:54 +02:00
2026-05-11 06:24:51 +02:00
2026-05-10 18:23:18 +02:00
2026-05-12 21:05:39 +02:00
2026-05-11 06:47:38 +02:00
2026-05-11 00:27:05 +02:00
2026-05-11 07:46:39 +02:00
2026-05-09 16:08:44 +02:00
2026-05-11 13:41:16 +02:00
2026-05-12 21:29:38 +02:00
2026-05-09 09:56:10 +02:00
2026-05-10 18:05:27 +02:00
2026-05-11 06:58:54 +02:00
2026-05-12 23:50:26 +02:00
2026-05-10 18:23:18 +02:00
2026-05-09 09:56:10 +02:00
2026-05-11 22:21:59 +02:00
2026-05-09 21:49:14 +02:00
2026-05-10 21:07:38 +02:00