This release includes 4 new DNS record types (HTTPS, SVCB, DNSKEY and DHCID), a big performance improvement for CLOUDFLAREAPI, plus many bug fixes and documentation improvements.
Highlights:
- New DNS record types SVCB and HTTPS. Supported on AXFRDDNS, BIND, GCLOUD, HEDNS, INWX, POWERDNS.
- New DNS record type DNSKEY. Supported on BIND and DESEC.
- New DNS record type DHCID. Supported on POWERDNS.
- CLOUDFLAREAPI's cache algorithm was broken, resulting in Zone Info being re-downloaded once for every domain.
ppreview
is now significantly faster as a result. - BIND: If you use BIND and the SOA() feature, your serial numbers never incremented. Fixed.
Do you maintain a provider? Please consider adding support for HTTPS, SVCB, DNSKEY, and DHCID.
Thanks to @christianbur for taking the lead on HTTPS/SVCB, to @xtexChooser for taking the lead on DNSKEY, and to @@fuero for taking the lead on DHCID! Thanks to @mraspor for reporting the BIND/SOA bug. Thanks to everyone for their contributions! This is a community effort and it wouldn't be a success without all your help!
Help wanted! We need maintainers for MSDNS, NAMEDOTCOM, and SOFTLAYER!
Changelog
Provider-specific changes:
- bb79c70: CLOUDFLAREAPI: Fix zone info cache bug (#2927) (@tlimoncelli)
- 3fd6806: BIND: BUGFIX: SOA serial number doesn't change if SOA() used (#2908) (@tlimoncelli)
- cf4cca0: INWX: Enable support for SVCB/HTTPS (#2930) (@christianbur)
- 1616348: NETLIFY: add support for listing all zones (#2933) (@SphericalKat)
- df0fa2d: POWERDNS: Change DHCID test value to valid base64 code (#2915) (@fuero)
- 0cd3c2f: POWERDNS: Enables DHCID (#2911) (@fuero)
- da6f621: POWERDNS: Value in test was too long (#2916) (@fuero)
- 3a9b413: NEW RECORD TYPE: HTTPS & SVCB (#2919) (@fritterhoff)
- 7741ef0: Enable support for SVCB/HTTPS in GCLOUD and HEDNS (#2926) (@tlimoncelli)
- 3f05482: NEW RECORD TYPE: DNSKEY (#2917) (@xtexChooser)
Documentation:
- 0b25fdb: DOCS: Add reminder to create github label after adding new provider (#2932) (@tlimoncelli)
- 6cbfb57: DOCS: Disabling colors via environment variable (#2907) (@allixsenos)
- c310647: DOCS: Documentation directory structure (#2905) (@cafferata)
- 4757a0f: DOCS: Remind devs to run go generate (#2929) (@tlimoncelli)
- 5078927: DOCS: Simplified the provider URLs (providers) (#2914) (@cafferata)
- 2f9d248: Fix typo: "cooordinate" (#2910) (@jauderho)
CI/CD:
- eae9686: Build(deps): Bump actions/upload-artifact from 4.3.1 to 4.3.3 (#2920) (@dependabot[bot])
Dependencies:
- bb79c70: CHORE: update deps (#2927) (@tlimoncelli)
Other changes and improvements:
Deprecation warnings
Warning
- REV() will switch from RFC2317 to RFC4183 in v5.0. This is a breaking change. Warnings are output if your configuration is affected. No date has been announced for v5.0. See https://docs.dnscontrol.org/language-reference/top-level-functions/revcompat
- MSDNS maintainer needed! Without a new volunteer, this DNS provider will lose support after April 2025. See #2878
- NAMEDOTCOM and SOFTLAYER need maintainers! These providers have no maintainer. Maintainers respond to PRs and fix bugs in a timely manner, and try to stay on top of protocol changes.
- get-certs/ACME support is frozen and will be removed without notice between now and July 2025. It has been unsupported since December 2022. If you don't use this feature, do not start. If you do use this feature, migrate ASAP. See discussion in issues/1400
Install
macOS and Linux
Install with Homebrew (recommended)
brew install dnscontrol
Install with MacPorts
sudo port install dnscontrol
Using with Docker
You can use the Docker image from Docker hub or GitHub Container Registry.
docker run --rm -it -v "$(pwd):/dns" ghcr.io/stackexchange/dnscontrol preview
Anywhere else
Alternatively, you can install the latest binary (or the apt/rpm/deb/archlinux package) from this page.
Or, if you have Go installed, you can install the latest version of DNSControl with the following command:
go install github.com/StackExchange/dnscontrol/v4@main
Update
Update to the latest version depends on how you choose to install dnscontrol
on your machine.
Update with Homebrew
brew upgrade dnscontrol
Install with MacPorts
sudo port upgrade dnscontrol
Alternatively, you can grab the latest binary (or the apt/rpm/deb package) from this page.