-
zdns v0.1.11 Stable
released this
2026-07-08 13:51:53 +00:00 | 0 commits to main since this releaseFixed
recursor --helpnow documents--http-listen <addr:port>(was<addr>).
The flag is parsed byparseListenAddr, which requires a port, so the old
help led users to--http-listen 127.0.0.1, which fails withInvalidAddress.parseListenAddrnow rejects an empty address witherror.InvalidAddress
instead of indexingaddr[0]out of bounds (a panic in safe builds). A bare
listen=in a config file, or--listen "", hit this. Added a test.
Changed
- README quick-start config example now uses
listen=127.0.0.1:5354, matching
the port used bymake docker-serve/docker-composeso a copied example
lines up with the documenteddig -p 5354smoke test.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
zdns v0.1.10 Stable
released this
2026-07-01 21:20:36 +00:00 | 14 commits to main since this releaseAdded
- Authoritative systemd service
zdns@.service(a template, one instance per
zone). Drop a zone at/etc/zdns/zones/<name>.zoneand run
systemctl enable --now zdns@<name>to serve it viazdns-serveusing
/etc/zdns/serve.conf. Same hardening as the recursor unit (DynamicUser, only
CAP_NET_BIND_SERVICE, ProtectSystem=strict). Ships a defaultserve.conf
(safelisten=127.0.0.1:5301; set0.0.0.0:53for public serving) and an
example zone at/usr/share/doc/zdns/examples/example.com.zone. Note:
zdns-serveis single-zone and binds a fixed metrics port, so run one instance
per host. Completes the PowerDNS daemon pair (authoritative + recursor).
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Authoritative systemd service
-
zdns v0.1.9 Stable
released this
2026-07-01 20:58:38 +00:00 | 18 commits to main since this releaseAdded
- man pages for all four binaries —
zdns-recursor(8),zdns-serve(8),
zdns-serve-tcp(8), andzdist(8)— installed by the Debian/RPM packages under
/usr/share/man/man8. Each documents the synopsis, options (including the new
--version), configuration keys, and files, soman zdns-recursornow works.
Sources live inpackaging/man/; the release version is substituted in at build
time.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- man pages for all four binaries —
-
zdns v0.1.8 Stable
released this
2026-07-01 20:38:12 +00:00 | 22 commits to main since this releaseAdded
--version(and-V) on every binary.zdns-serve,zdns-serve-tcp,
zdns-recursor, andzdistnow print<name> <version>and exit, so an
operator (and the CI smoke gate) can ask a build what it is. The version is
wired in at build time via-Dversion(the release pipeline passes the
build.zig.zonversion; a plainzig buildreports0.0.0-dev). Implemented
as a small sharedsrc/version.zighelper with unit tests.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
zdns v0.1.7 Stable
released this
2026-07-01 19:58:26 +00:00 | 26 commits to main since this releaseAdded
- The Debian/RPM packages now install a systemd service. The recursive
resolver ships aszdns-recursor.service— hardened (DynamicUser, only
CAP_NET_BIND_SERVICE,ProtectSystem=strict,NoNewPrivileges) — with a
default config at/etc/zdns/recursor.conf. The safe default binds
127.0.0.1:5300(never an open resolver, no clash withsystemd-resolvedon
:53); setlisten=0.0.0.0:53to serve a network (the unit already grants the
privileged-port capability).apt install zdns/dnf install zdnsnow enable
and start the recursor. Unit, config, and maintainer scripts live inpackaging/.
Added
edns/clampUdpPayloadSize: a test exercising the RFC 6891 EDNS0 UDP
requestor's payload-size clamp branches — a value below the 512-byte floor
clamps up to 512, a value above the 4096-byte ceiling clamps down to 4096,
and an in-range value passes through unchanged. The clamp bounds were
previously unpinned, so an off-by-one at either edge would have passed
silently.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- The Debian/RPM packages now install a systemd service. The recursive
-
zdns v0.1.6 Stable
released this
2026-07-01 13:56:01 +00:00 | 28 commits to main since this releaseAdded
edns/clampUdpPayloadSize: a test exercising the RFC 6891 EDNS0 UDP
requestor's payload-size clamp branches — a value below the 512-byte floor
clamps up to 512, a value above the 4096-byte ceiling clamps down to 4096,
and an in-range value passes through unchanged. The clamp bounds were
previously unpinned, so an off-by-one at either edge would have passed
silently.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
zdns v0.1.5 Stable
released this
2026-07-01 11:57:02 +00:00 | 31 commits to main since this releaseAdded
dnssec/keytag: a correctness test pinningcomputeKeytagto the canonical
RFC 4034 Appendix B.1 vector (example.DNSKEY 256/3/5 → key id 60485). The
existing tests only assertedkeytag > 0, so a carry/byte-order regression
would have passed silently.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
zdns v0.1.4 Stable
released this
2026-06-28 15:26:28 +00:00 | 35 commits to main since this releaseChanged
- First release shipped through the consolidated, ArgoCD-delivered pipeline —
sharedClusterWorkflowTemplates fromsean/pipelinesdriven by the
registry ApplicationSet, instead of the per-projectscripts/zdns
kubectl-apply set. The promote nowgit fetch --unshallows before the
ancestry check (theReleasedOnFullClonecontract invariant).
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- First release shipped through the consolidated, ArgoCD-delivered pipeline —
-
zdns v0.1.3 Stable
released this
2026-06-27 19:25:11 +00:00 | 37 commits to main since this releaseSecurity
- rdata parsers (CERT, IPSECKEY, CSYNC, ZONEMD, SVCB): guard
rdlength - consumed
against integer underflow. A malformed record whoserdlengthis shorter than its
fixed header made the length computation wrap — a panic in safe builds (a DoS on a
crafted packet), or an over-large read otherwise. These five now reject it with
PacketTooShort, matching the guard the other rdata parsers already had.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- rdata parsers (CERT, IPSECKEY, CSYNC, ZONEMD, SVCB): guard
-
zdns v0.1.1 Stable
released this
2026-06-27 19:02:53 +00:00 | 41 commits to main since this releaseAutomated release. Install (signed): apt/dnf at pkg.sean.farm/zdns
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)