Merge branch 'main' into ui-refactor

Port IPv6 overlay support (#5631) into the Wails UI:
- Add DisableIPv6 config toggle to Settings (NetworkTab + services)
- Filter ::/0 alongside 0.0.0.0/0 as an exit-node route
- Suppress duplicate v6 default-route notifications in tray
This commit is contained in:
Zoltan Papp
2026-05-11 14:10:12 +02:00
286 changed files with 14639 additions and 3674 deletions

View File

@@ -54,7 +54,10 @@ export default function Networks() {
};
const overlapping = useMemo(() => filterOverlapping(routes), [routes]);
const exitNodes = useMemo(() => routes.filter((r) => r.range === "0.0.0.0/0"), [routes]);
const exitNodes = useMemo(
() => routes.filter((r) => r.range === "0.0.0.0/0" || r.range === "::/0"),
[routes],
);
return (
<div className="flex h-full flex-col p-6">

View File

@@ -68,6 +68,7 @@ export default function Settings() {
disableClientRoutes: cfg.disableClientRoutes,
disableServerRoutes: cfg.disableServerRoutes,
disableDns: cfg.disableDns,
disableIpv6: cfg.disableIpv6,
blockLanAccess: cfg.blockLanAccess,
enableSshRoot: cfg.enableSshRoot,
enableSshSftp: cfg.enableSshSftp,
@@ -182,6 +183,11 @@ function NetworkTab({ cfg, setField }: Ctx) {
onChange={(v) => setField("disableServerRoutes", v)}
label="Disable server routes"
/>
<Switch
checked={cfg.disableIpv6}
onChange={(v) => setField("disableIpv6", v)}
label="Disable IPv6 overlay addressing"
/>
<Switch
checked={cfg.blockLanAccess}
onChange={(v) => setField("blockLanAccess", v)}