AdguardTeam/AdGuardHome · error
resetting dhcpv6 leases: %w
Error message
resetting dhcpv6 leases: %w
What it means
Loading stored leases into the DHCPv6 server via ResetLeases failed. Only raised when a v6 server is configured (s.srv6 != nil); wrapped error comes from the v6 lease storage layer.
Source
Thrown at internal/dhcpd/db.go:137
continue
}
if lease.IP.Is4() {
leases4 = append(leases4, lease)
} else {
leases6 = append(leases6, lease)
}
}
err = s.srv4.ResetLeases(leases4)
if err != nil {
return fmt.Errorf("resetting dhcpv4 leases: %w", err)
}
if s.srv6 != nil {
err = s.srv6.ResetLeases(leases6)
if err != nil {
return fmt.Errorf("resetting dhcpv6 leases: %w", err)
}
}
log.Info(
"dhcp: loaded leases v4:%d v6:%d total-read:%d from DB",
len(leases4),
len(leases6),
len(leases),
)
return nil
}
// dbStore stores DHCP leases.
func (s *server) dbStore() (err error) {
// Use an empty slice here as opposed to nil so that it doesn't write
// "null" into the database file if leases are empty.
leases := []*dbLease{}View on GitHub (pinned to b41aefbe51)
Solutions
- Inspect the wrapped error for the specific lease problem
- Delete the leases file if old v6 leases are stale after a prefix change
- Ensure v6 range config matches the leases being restored
Defensive patterns
Strategy: fallback
Validate before calling
// drop v6 leases outside configured range before enabling
for _, l := range leases6 { if !v6RangeContains(l.IP) { /* drop */ } } Prevention
- Clear old v6 leases after prefix changes
- Re-apply config after fixing ranges
When it happens
Trigger: Calling Create or set-config with DHCPv6 enabled and a lease DB containing invalid v6 lease data (bad IP, conflicts with the configured v6 range).
Common situations: Enabling DHCPv6 after previously running with a different range/prefix; stale or corrupt leases referencing deprecated prefixes.
Related errors
- resetting dhcpv4 leases: %w
- parsing hardware address: %w
- parsing expiry time: %w
- reading db: %w
- decoding db: %w
AI-assisted analysis of AdguardTeam/AdGuardHome@b41aefbe51 (2026-08-27).
Data as JSON: /api/errors/60aa685c99284405.
Report an issue: GitHub.