ExternalDNS is a Kubernetes controller that keeps records in external DNS providers synchronized with resources defined inside a cluster. It watches Kubernetes objects, derives the DNS records that should exist, compares that desired state with provider data, and applies the required changes.
Unlike a cluster DNS server, ExternalDNS does not answer DNS queries itself. Its role is to automate authoritative DNS configuration so services and other exposed resources can acquire appropriate public or private names as cluster state changes. This makes it useful in environments where manual DNS updates would otherwise become part of every deployment workflow.
This is free and open source software.
Key Features
- Builds desired DNS records from Kubernetes sources including Services, Ingresses, Gateway API resources and custom resources.
- Works with numerous DNS platforms through built-in providers and a webhook mechanism for external provider implementations.
- Tracks record ownership with registry mechanisms, including TXT records, to avoid blindly taking control of unrelated entries in populated zones.
- Supports domain filters so a controller can be limited to selected DNS zones or naming scopes.
- Offers synchronization policies that can permit full synchronization, restrict operation to upserts, or allow creation without later modification or deletion.
- Provides dry-run operation for reviewing intended provider changes before they are applied.
- Uses resource annotations to control hostnames, record time-to-live values and other DNS-related behaviour.
- Can run continuously as a reconciliation controller or execute a single synchronization pass for testing and validation.
Website: github.com/kubernetes-sigs/external-dns
Support:
Developer: Kubernetes SIG Network
License: Apache License 2.0
ExternalDNS is written in Go. Learn Go with our recommended free books and free tutorials.
Related Software
| Useful DNS Tools | |
|---|---|
| DNSControl | System for maintaining DNS zones |
| q | Command line DNS client |
| octoDNS | Manage DNS across multiple providers |
| nsupdate.info | Implement a free dynamic DNS service |
| DomainMOD | Manage domains and other internet assets in a central location |
| Poweradmin | Web-based DNS administration tool |
| dnsperf | Measure performance of authoritative domain name services |
| ctrld | Configurable DNS forwarding proxy |
| Atomia DNS | Multi-tenant system for handling large amounts of DNS data |
| SPFtoolbox | Look up DNS records |
| Designate | Multi-tenant DNSaaS service for OpenStack |
| dnsi | Tool to investigate the DNS |
| Digger | Modern DNS lookup tool with a graphical interface |
| dnst | Toolset to assist DNS operators with zone and nameserver maintenance |
| dnspyre | Command-line DNS benchmark tool |
Read our verdict in the software roundup.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.