Greetings DNS fans!
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.
Experimental: Try the new D() syntax!
Select credential entries directly with REGISTRAR() and SERVICE() in dnsconfig.js. The legacy syntax remains supported; this revision replaces the experimental PROVIDER()/DNS_SERVICE() syntax from v5.3.0. See the examples in the conversion guide. Please test it and share feedback!
Changelog
Provider-specific changes:
- 9b9ad49: fix(p/CLOUDFLAREAPI): Let CF to reject invalid proxy settings; don't guess what is invalid (#5051) (@ybai08)
- 148c2d4: fix(p/CLOUDPRESS): halve zone fetches and make retry backoff configurable (#5046) (@arnoschoon)
- 40a2436: fix(p/DNSIMPLE): add URL as supported type (#5054) (@philpennock)
- c8d0fd0: fix(p/LUADNS): bug: occasional "Server returned bad status code (500)" fails a push (#5042) (@TomOnTime)
CI/CD:
- 81a6eab: build(deps): bump github/codeql-action/upload-sarif from 4.38.3 to 4.39.1 (#5050) (@dependabot[bot])
- c679839: build(deps): bump step-security/harden-runner from 2.22.1 to 2.22.2 (#5049) (@dependabot[bot])
- 01079f5: build(deps): bump zod and puppeteer (#5044) (@dependabot[bot])
- 08c0d2a: build(deps-dev): bump fast-uri from 3.1.8 to 3.1.9 (#5045) (@dependabot[bot])
Deprecation warnings
Warning
- REV() will switch from RFC2317 to RFC4183 sometime after v5.0 is released. This is a breaking change. Warnings are output if your configuration is affected. 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 trust --formula dnscontrol/tap/dnscontrol
brew install DNSControl/tap/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/dnscontrol/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/DNSControl/dnscontrol/v4@mainUpdate
Update to the latest version depends on how you choose to install dnscontrol on your machine.
Update with Homebrew
brew upgrade DNSControl/tap/dnscontrolAlternatively, you can grab the latest binary (or the apt/rpm/deb package) from this page.