[management] Allocate and preserve IPv6 overlay addresses for embedded proxy peers (#6132)

This commit is contained in:
Viktor Liu
2026-05-14 23:05:33 +09:00
committed by GitHub
parent 77b479286e
commit ea9fab4396
5 changed files with 70 additions and 24 deletions

View File

@@ -2487,6 +2487,18 @@ func (am *DefaultAccountManager) buildIPv6AllowedPeers(ctx context.Context, tran
allowedPeers[peerID] = struct{}{}
}
}
// Embedded proxy peers sit outside regular group membership but must
// participate in any v6-enabled overlay to reach v6-only peers.
peers, err := transaction.GetAccountPeers(ctx, store.LockingStrengthNone, accountID, "", "")
if err != nil {
return nil, fmt.Errorf("get peers: %w", err)
}
for _, p := range peers {
if p.ProxyMeta.Embedded {
allowedPeers[p.ID] = struct{}{}
}
}
return allowedPeers, nil
}