Greetings DNS fans!
BIG CHANGES (please test before using this release in production):
- We've upgraded the library that parses command line flags. The conversion went smoothly for everything but
shell-completionwhich required some wrangling that was difficult to test. Please do extra testing before using this in production. - The Monthly DNSControl Community Video Conference Call moved to a new day and time (see below) to be more compatible with North America's west coast (Ok, that's not a software change but...)
HIGHLIGHTS
- Improvements to CLOUDNS: It is now also a registrar! Plus, GeoDNS support, better docs, SRV fixes, better rate-limiting.
- Improvements to PORKBUN: Support added for SSHFP, URL, and URL301 record.
- Improvements to BunnyDNS: Added TLSA support.
- And much more!
Thanks to all contributors involved in this release! This is a community project and we couldn't do it without all of your contributions!
Sincerely,
--Tom Limoncelli
Monthly video call!
Everyone is invited to the Monthly DNSControl Community Video Conference Call on the 2nd Tuesday of each month. Join whether you are a new user with questions or an experienced developer that wants to discuss DNSControl internals... or anything in between! Meeting details on GitHub Discussions.
Changelog
Provider-specific changes:
- 8125a35: CLOUDNS: Add GeoDNS support (#3944) (@anolek)
- 96a7bf3: CLOUDNS: Update capabilities documentation (#3964) (@tlimoncelli)
- 7504767: CLOUDNS: add registrar support (#3961) (@RobinDaugherty)
- a7e2307: CLOUDNS: allow SRV record with null target (#3957) (@RobinDaugherty)
- 590774f: CLOUDNS: pause when API fails due to rate limit (#3962) (@RobinDaugherty)
- 6d0db4c: DIGITALOCEAN: SOA is suppported (#3966) (@chicks-net)
- 704cb7f: DIGITALOCEAN: Update feature table for provider (#3958) (@chicks-net)
- 1fda952: OVH: Allow Null MX Record (#3938) (@anolek)
- 154e95f: PORKBUN: Add support for SSHFP record types. (#3968) (@darkrain42)
- 751ae63: PORKBUN: skip NS only APEX test (#3950) (@imlonghao)
- f4b402b: PORKBUN: support URL and URL301 (#3951) (@imlonghao)
Documentation:
- a0ea3f6: DOCS: BIND Provider - filenameformat fixes (#3945) (@andrewimeson)
- 6edfbf5: DOCS: Remove reference to ppush/ppreview, spelling fixes (#3940) (@andrewimeson)
CI/CD:
- 1ca6c61: Build(deps): Bump alpine from 3.22.2 to 3.23.2 (#3952) (@dependabot[bot])
Dependencies:
- fc411f0: CHORE: Update dependencies (#3963) (@tlimoncelli)
Other changes and improvements:
- d50aef0: Add TLSA support for BunnyDNS (#3943) (@baalajimaestro)
- 05eade1: CHORE: Upgrade to github.com/urfave/cli/v3 (#3948) (@tlimoncelli)
- 5fe3523: CHORE: generate-all.sh (#3969) (@tlimoncelli)
- bf89991: FIX: Type definitions to allow passing meta object as second parameter (#3947) (@andrewimeson)
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
- NAMEDOTCOM, OPENSRS 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.
Install
macOS and Linux
Install with Homebrew (recommended)
brew install dnscontrolUsing 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 previewAnywhere 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@mainUpdate
Update to the latest version depends on how you choose to install dnscontrol on your machine.
Update with Homebrew
brew upgrade dnscontrolAlternatively, you can grab the latest binary (or the apt/rpm/deb package) from this page.