|
|
|
|
@ -81,8 +81,8 @@ func WGCfg(nm *netmap.NetworkMap, logf logger.Logf, flags netmap.WGConfigFlags, |
|
|
|
|
|
|
|
|
|
// Logging buffers
|
|
|
|
|
skippedUnselected := new(bytes.Buffer) |
|
|
|
|
skippedIPs := new(bytes.Buffer) |
|
|
|
|
skippedSubnets := new(bytes.Buffer) |
|
|
|
|
skippedExpired := new(bytes.Buffer) |
|
|
|
|
|
|
|
|
|
for _, peer := range nm.Peers { |
|
|
|
|
if peer.DiscoKey().IsZero() && peer.HomeDERP() == 0 && !peer.IsWireGuardOnly() { |
|
|
|
|
@ -95,7 +95,16 @@ func WGCfg(nm *netmap.NetworkMap, logf logger.Logf, flags netmap.WGConfigFlags, |
|
|
|
|
// anyway, since control intentionally breaks node keys for
|
|
|
|
|
// expired peers so that we can't discover endpoints via DERP.
|
|
|
|
|
if peer.Expired() { |
|
|
|
|
logf("[v1] wgcfg: skipped expired peer %s", peer.Key().ShortString()) |
|
|
|
|
if skippedExpired.Len() >= 1<<10 { |
|
|
|
|
if !bytes.HasSuffix(skippedExpired.Bytes(), []byte("...")) { |
|
|
|
|
skippedExpired.WriteString("...") |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
if skippedExpired.Len() > 0 { |
|
|
|
|
skippedExpired.WriteString(", ") |
|
|
|
|
} |
|
|
|
|
fmt.Fprintf(skippedExpired, "%s/%v", peer.StableID(), peer.Key().ShortString()) |
|
|
|
|
} |
|
|
|
|
continue |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -137,12 +146,11 @@ func WGCfg(nm *netmap.NetworkMap, logf logger.Logf, flags netmap.WGConfigFlags, |
|
|
|
|
if skippedUnselected.Len() > 0 { |
|
|
|
|
logf("[v1] wgcfg: skipped unselected default routes from: %s", skippedUnselected.Bytes()) |
|
|
|
|
} |
|
|
|
|
if skippedIPs.Len() > 0 { |
|
|
|
|
logf("[v1] wgcfg: skipped node IPs: %s", skippedIPs) |
|
|
|
|
} |
|
|
|
|
if skippedSubnets.Len() > 0 { |
|
|
|
|
logf("[v1] wgcfg: did not accept subnet routes: %s", skippedSubnets) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if skippedExpired.Len() > 0 { |
|
|
|
|
logf("[v1] wgcfg: skipped expired peer: %s", skippedExpired) |
|
|
|
|
} |
|
|
|
|
return cfg, nil |
|
|
|
|
} |
|
|
|
|
|