Skip to content

v2.2.0

Choose a tag to compare

@mojo333 mojo333 released this 05 Mar 21:04
· 12 commits to master since this release

Changes

  • Migrate DNS cache to ristretto — Replace hashicorp/golang-lru with dgraph-io/ristretto/v2 for the DNS resolver cache. Ristretto uses TinyLFU admission and byte-cost eviction, keeping frequently queried domains cached regardless of insertion order. The --cache-size flag now represents actual byte cost.
  • Add --cache-metrics flag — Enable detailed cache performance metrics (hits, misses, evictions) via the cache-metrics control command.
  • Remove cache-keys command — Ristretto does not expose cache keys; use cache-stats or cache-metrics instead.
  • Typed cache interface — The internal Cacher interface now uses typed keys (uint64) and values, with xxhash-based key hashing and DNS question validation to guard against hash collisions.

Binaries

Platform File
Linux amd64 nextdns_2.2.0_linux_amd64.tar.gz
Linux arm64 nextdns_2.2.0_linux_arm64.tar.gz
Linux armv7 nextdns_2.2.0_linux_armv7.tar.gz
FreeBSD amd64 nextdns_2.2.0_freebsd_amd64.tar.gz
FreeBSD arm64 nextdns_2.2.0_freebsd_arm64.tar.gz