Skip to content

v1.4.0 - Multi‑Upstream Failover

Choose a tag to compare

@KianiDev KianiDev released this 25 Apr 16:10
· 19 commits to master since this release

🔀 Multi‑Upstream Failover & Config Enhancements

This release adds support for multiple upstream DNS servers with automatic failover.
You can now define a list of upstreams (each with its own protocol, port, and hostname) and the resolver will try them in order until one succeeds – no more relying on a single provider.


✨ Added

  • Multi‑upstream failover – new [upstreams] config section allows defining multiple upstream servers with per‑server protocol/port/hostname. The resolver iterates through them until a response is received; if all fail, the last error is returned. Fully hot‑reloadable.
  • [upstreams] configuration template – documented example (commented out) in config/phantomd.conf shows how to configure Cloudflare, Google, and Quad9 as fallbacks.
  • New tests – 4 additional tests cover multi‑upstream success, failover to second upstream, total failure, and cache‑hit skipping of upstreams. Total suite: 83 tests.

🛠️ Changed

  • Internal forwarding methods now accept an optional upstream dictionary (backward‑compatible).
  • Single‑upstream configuration (dns_server/dns_protocol) continues to work exactly as before.

📦 Upgrading

  • Update: ./installer.sh --update then systemctl restart phantomd
  • Fresh install: ./installer.sh

Full Changelog: v1.3.0...v1.4.0