🚀
DNSControl
🚀
DNSControl
  • Introduction to DNSControl
  • Getting Started
    • Overview
    • Examples
    • Migrating zones to DNSControl
    • TypeScript autocomplete and type checking
  • Language Reference
    • JavaScript DSL
    • Top Level Functions
      • D
      • DEFAULTS
      • DOMAIN_ELSEWHERE
      • DOMAIN_ELSEWHERE_AUTO
      • D_EXTEND
      • FETCH
      • HASH
      • IP
      • NewDnsProvider
      • NewRegistrar
      • PANIC
      • REV
      • REVCOMPAT
      • getConfiguredDomains
      • require
      • require_glob
    • Domain Modifiers
      • A
      • AAAA
      • ALIAS
      • AUTODNSSEC_OFF
      • AUTODNSSEC_ON
      • CAA
      • CAA_BUILDER
      • CNAME
      • DHCID
      • DNAME
      • DNSKEY
      • DISABLE_IGNORE_SAFETY_CHECK
      • DMARC_BUILDER
      • DS
      • DefaultTTL
      • DnsProvider
      • FRAME
      • HTTPS
      • IGNORE
      • IGNORE_NAME
      • IGNORE_TARGET
      • IMPORT_TRANSFORM
      • IMPORT_TRANSFORM_STRIP
      • INCLUDE
      • LOC
      • LOC_BUILDER_DD
      • LOC_BUILDER_DMM_STR
      • LOC_BUILDER_DMS_STR
      • LOC_BUILDER_STR
      • M365_BUILDER
      • MX
      • NAMESERVER
      • NAMESERVER_TTL
      • NAPTR
      • NO_PURGE
      • NS
      • PTR
      • PURGE
      • SOA
      • SPF_BUILDER
      • SRV
      • SSHFP
      • SVCB
      • TLSA
      • TXT
      • URL
      • URL301
      • Service Provider specific
        • Akamai Edge Dns
          • AKAMAICDN
        • Amazon Route 53
          • R53_ALIAS
        • Azure DNS
          • AZURE_ALIAS
        • Cloudflare DNS
          • CF_REDIRECT
          • CF_SINGLE_REDIRECT
          • CF_TEMP_REDIRECT
          • CF_WORKER_ROUTE
        • ClouDNS
          • CLOUDNS_WR
    • Record Modifiers
      • TTL
      • Service Provider specific
        • Amazon Route 53
          • R53_ZONE
          • R53_EVALUATE_TARGET_HEALTH
    • Why CNAME/MX/NS targets require a "dot"
  • Provider
    • Supported providers
    • Akamai Edge DNS
    • Amazon Route 53
    • AutoDNS
    • AXFR+DDNS
    • Azure DNS
    • Azure Private DNS
    • BIND
    • Bunny DNS
    • CentralNic Reseller (CNR) - formerly RRPProxy
    • Cloudflare
    • ClouDNS
    • CSC Global
    • deSEC
    • DigitalOcean
    • DNS Made Easy
    • DNSimple
    • DNS-over-HTTPS
    • DOMAINNAMESHOP
    • Dynadot
    • easyname
    • Exoscale
    • Gandi_v5
    • Gcore
    • Google Cloud DNS
    • Hetzner DNS Console
    • HEXONET
    • hosting.de
    • Huawei Cloud DNS
    • Hurricane Electric DNS
    • Internet.bs
    • INWX
    • Linode
    • Loopia
    • LuaDNS
    • Microsoft DNS Server on Microsoft Windows Server
    • Mythic Beasts
    • Namecheap
    • Name.com
    • Netcup
    • Netlify
    • NS1
    • OpenSRS
    • Oracle Cloud
    • OVH
    • Packetframe
    • Porkbun
    • PowerDNS
    • Realtime Register
    • RWTH DNS-Admin
    • Sakura Cloud
    • SoftLayer DNS
    • TransIP
    • Vultr
  • Commands
    • preview/push
    • check-creds
    • get-zones
    • get-certs
    • fmt
    • creds.json
    • Global Flag
    • Disabling Colors
  • Advanced features
    • CI/CD example for GitLab
    • CLI variables
    • Nameservers and Delegations
    • Notifications
    • Useful code tricks
    • JSON Reports
  • Developer info
    • Code Style Guide
    • Documentation Style Guide
    • DNSControl is an opinionated system
    • Writing new DNS providers
    • Creating new DNS Resource Types (rtypes)
    • Integration Tests
    • Test a branch
    • Unit Testing DNS Data
    • Bug Triage Process
    • Bring-Your-Own-Secrets for automated testing
    • Debugging with dlv
    • ALIAS Records
    • TXT record testing
    • DNS records ordering
  • Release
    • How to build and ship a release
    • Changelog v3.16.0
    • GitHub releases
Powered by GitBook
On this page
  • Provider Features
  • Providers with "official support"
  • Providers with "contributor support"
  • Requested providers
Edit on GitHub
  1. Provider

Supported providers

Provider Features

The table below shows various features supported, or not supported by DNSControl providers. This table is automatically generated from metadata supplied by the provider when they register themselves inside dnscontrol.

An empty space may indicate the feature is not supported by a provider, or it may simply mean the feature has not been investigated and implemented yet. If a feature you need is missing from a provider that supports it, we'd love your contribution to ensure it works correctly and add it to this matrix.

If a feature is definitively not supported for whatever reason, we would also like a PR to clarify why it is not supported, and fill in this entire matrix.

Provider name

Official Support

DNS Provider

Registrar

dual host

create-domains

get-zones

❌

✅

❌

❔

❌

✅

✅

❔

✅

✅

✅

❌

✅

✅

❔

✅

❌

❔

❔

❔

✅

✅

✅

❌

✅

✅

✅

✅

✅

❔

❔

❔

❔

✅

❔

✅

❌

❔

❌

❌

❔

❔

❔

❌

❌

✅

❌

✅

❌

✅

❌

✅

✅

✅

✅

✅

✅

❌

✅

✅

✅

✅

✅

✅

✅

❌

❌

❌

❌

✅

✅

❌

✅

❌

✅

❔

❔

❌

❌

✅

❔

✅

❌

❔

❌

❔

❔

❔

❔

✅

✅

✅

✅

✅

❌

❔

❌

❌

❔

❔

❌

❌

✅

❔

✅

❌

❔

❌

❔

❔

❔

❔

✅

✅

✅

✅

✅

❌

✅

❔

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

❌

✅

❌

❔

✅

✅

✅

❔

❌

❌

✅

❌

✅

❌

❔

❌

❌

❌

❔

❔

❌

✅

✅

✅

✅

❌

✅

✅

✅

❔

✅

❌

✅

✅

❔

✅

✅

✅

✅

✅

❔

❔

❌

❌

✅

✅

❌

✅

❌

✅

✅

✅

✅

❔

✅

❔

✅

❔

✅

✅

❔

✅

❔

❔

✅

❔

❔

✅

✅

❌

✅

✅

✅

✅

✅

❔

❌

❌

✅

✅

❌

✅

✅

❌

✅

❔

❌

❌

❔

✅

✅

✅

✅

✅

✅

✅

❔

✅

❔

❔

❔

❔

❔

❔

✅

❔

❔

❔

❔

❔

❔

❔

❔

❌

✅

❌

✅

❌

✅

❔

✅

✅

✅

❔

✅

✅

❔

✅

✅

✅

✅

✅

❔

❔

✅

❔

✅

✅

❌

✅

❌

✅

❔

✅

❔

❔

❌

❔

❔

❔

✅

❔

❔

❔

❔

❔

❔

❔

❔

✅

✅

❌

✅

✅

❔

✅

✅

✅

❔

❌

✅

✅

❔

✅

✅

❔

❌

❌

❔

❔

❔

❌

❌

✅

❌

✅

❌

❔

✅

✅

❔

❔

❌

❔

✅

❔

✅

❌

❔

❌

❌

❔

❔

❔

✅

✅

✅

❌

❌

✅

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❌

❔

❌

✅

❌

❔

❔

✅

❌

❔

❌

❌

❌

❌

✅

❌

❔

❔

❔

❔

❔

❔

❔

❔

❔

❌

❌

✅

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❌

❔

❌

❌

✅

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❌

❔

❌

✅

❌

❔

✅

✅

❔

❔

❌

❔

✅

❔

✅

❔

❔

❌

❔

❔

❔

❔

❌

❌

❔

❌

✅

✅

✅

✅

✅

❔

❔

❌

❔

✅

❔

✅

✅

❔

✅

❌

❔

❔

❔

❔

❌

✅

✅

✅

❌

✅

✅

✅

❔

✅

❌

❔

✅

❔

✅

✅

✅

✅

❔

❔

❔

❔

✅

✅

✅

❌

✅

❌

❔

✅

✅

✅

✅

❌

❌

✅

❔

✅

❌

✅

❌

❌

❔

❔

❔

✅

✅

✅

❌

✅

❌

❔

✅

✅

❌

✅

✅

✅

✅

❌

✅

✅

✅

❌

❌

❔

❔

❔

✅

✅

✅

❌

✅

❌

✅

❌

✅

❌

❔

❌

❌

❌

❌

✅

❌

❔

✅

✅

❔

❔

❔

✅

✅

✅

❌

✅

✅

❔

❌

✅

❔

❔

❔

❔

✅

❔

✅

❔

❔

✅

❔

❔

❔

❔

✅

✅

❔

❌

✅

✅

❔

✅

✅

✅

❔

❌

❌

✅

✅

✅

✅

❔

✅

✅

❔

❔

❔

✅

✅

✅

❌

✅

❌

❔

❌

✅

❔

❌

❌

❌

❌

❌

✅

❌

❌

❌

❌

❔

❔

❔

✅

✅

✅

❌

❌

✅

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❌

❔

❌

✅

✅

❔

✅

✅

✅

✅

❔

✅

✅

❔

✅

✅

✅

✅

❔

❔

❔

❔

✅

✅

✅

❌

✅

❌

❔

❔

✅

❔

❔

❌

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❌

❌

✅

❌

✅

✅

❔

❌

✅

❌

❔

✅

✅

❌

❌

✅

✅

❔

✅

❌

❔

❔

❔

✅

❌

✅

❌

✅

❌

❔

✅

✅

❔

❔

❌

❔

✅

❔

✅

✅

❔

✅

❔

❔

❔

❔

✅

✅

✅

✅

✅

❌

❔

❌

❌

❔

❔

❌

✅

✅

❔

✅

❔

❔

❔

❔

❔

❔

❔

❌

❌

✅

❌

✅

❌

❔

❌

✅

❔

❔

❌

❔

✅

❔

✅

✅

❔

✅

❔

❔

❔

❔

✅

❌

✅

❌

✅

✅

✅

✅

✅

❔

❔

❌

❔

❌

❔

❌

❔

❔

❌

❔

❔

❔

❔

❌

❌

✅

❌

✅

✅

❔

✅

❔

❔

❔

❌

❔

❌

❔

✅

❔

❔

❔

❔

❔

❔

❔

✅

❌

✅

❌

✅

❌

❔

❔

✅

❔

❔

❌

❔

❌

❔

✅

❔

❔

❔

❔

❔

❔

❔

❌

❌

❌

❌

✅

❌

✅

✅

✅

❌

❔

❌

❌

❌

❔

✅

❌

❔

❌

❌

❔

❔

❔

❌

❌

✅

❌

✅

❌

✅

✅

✅

✅

✅

❌

✅

✅

❔

✅

❔

✅

✅

✅

✅

✅

❔

✅

✅

✅

❌

❌

✅

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❔

❌

❔

❌

✅

❌

❔

✅

✅

❔

❔

❔

✅

✅

❔

✅

✅

❔

✅

❌

❔

❔

❔

✅

✅

✅

❌

✅

✅

❔

❌

✅

❔

❔

❔

❔

❌

❔

✅

✅

❔

✅

❔

❔

❔

❔

✅

❌

✅

❌

✅

❌

❔

❔

❔

❔

❔

❔

❔

✅

❔

✅

❔

❔

❔

❔

❔

❔

❔

❌

❌

❔

❌

✅

✅

❔

✅

✅

❌

✅

❌

❌

❌

❌

✅

❌

✅

✅

❌

❔

❔

❔

❌

❌

✅

❌

✅

❌

❔

✅

✅

✅

✅

❔

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

✅

❌

✅

✅

❔

✅

✅

✅

❔

✅

✅

❌

❌

✅

✅

❔

✅

❌

❌

❔

❔

❌

✅

✅

✅

✅

✅

✅

❌

✅

❔

✅

❌

❔

✅

❔

✅

✅

✅

✅

❔

❔

❔

❔

✅

✅

✅

❌

✅

❌

❔

❌

✅

❔

❔

❌

❌

✅

❔

✅

✅

❔

❌

❔

❔

❔

❔

❌

❌

✅

❌

✅

❌

❔

✅

✅

❌

✅

❌

❌

✅

❌

✅

❌

✅

❌

❌

❌

❌

❌

❌

✅

✅

❌

✅

❌

❔

❔

❔

❔

❔

❌

❔

❔

❔

✅

❔

❔

❔

❔

❔

❔

❔

❔

❌

❔

❌

✅

❌

✅

✅

✅

❌

❌

❌

✅

❌

❌

✅

✅

❌

✅

❌

❌

❌

❌

❌

❌

✅

❌

✅

❌

❔

❌

✅

❔

❔

❌

❔

❌

❔

✅

✅

❔

❌

❔

❔

❔

❔

❔

✅

✅

Providers with "official support"

Official support means:

  • New releases will block if any of these providers do not pass integration tests.

  • The DNSControl maintainers prioritize fixing bugs in these providers (though we gladly accept PRs).

  • New features will work on these providers (unless the provider does not support it).

  • StackOverflow maintains test accounts with those providers for running integration tests.

Providers in this category and their maintainers are:

Name
Maintainer

@vatsalyagoel

@tlimoncelli

@tresni

@mikenz

@riyadhalnur

@tlimoncelli

@tresni

Providers with "contributor support"

The other providers are supported by community members, usually the original contributor.

Due to the large number of DNS providers in the world, the DNSControl team can not support and test all providers. Test frameworks are provided to help community members support their code independently.

Expectations of maintainers:

  • Maintainers are expected to support their provider and/or help find a new maintainer.

  • Maintainers should set up test accounts and periodically verify that all tests pass (pkg/js/parse_tests and integrationTest).

  • Contributors are encouraged to add new tests and refine old ones. (Test-driven development is encouraged.)

  • Bugs will be referred to the maintainer or their designate.

  • Maintainers must be responsible to bug reports and PRs. If a maintainer is unresponsive for more than 2 months, we will consider disabling the provider. First we will put out a call for new maintainer. If nobody volunteers, the provider may be disabled.

  • Tom needs to know your real email address. Please email tlimoncelli at stack over flow dot com so he has it.

Providers in this category and their maintainers are:

Name
Maintainer

@matthewmgamble

@edglynes

@hnrgrgr

@ppmathis

@tresni

@pragmaton

@KaiSchwarz-cnic

@Air-New-Zealand

@D3luxee

@Deraen

@onlyhavecans

@vojtad

@mikenz

@SimenBai

@tresni

@pierre-emmanuelJ

@TomOnTime

@xddxdd

@rblenkinsopp

@das7pad

@KaiSchwarz-cnic

@membero

@huihuimoe

@pragmaton

@patschi

@koesie10

@systemcrash

@riku22

@willpower232

@kordianbruck

@SphericalKat

@costasd

@philhug

@kallsyms

@masterzen

@hamptonmoore

@jpbede

@PJEilers

@tresni

@MisterErwin

@ttkzw

@jamielennox

@blackshadev

@pgaskin

Requested providers

We have received requests for the following providers. If you would like to contribute code to support this provider, we'd be glad to help in any way.

Q: Why are the above GitHub issues marked "closed"?

Q: Would someone write a provider for me?

A: The maintainer of DNSControl does not write new providers. New providers are contributed by the community.

PreviousWhy CNAME/MX/NS targets require a "dot"NextAkamai Edge DNS

Last updated 14 days ago

(#1251)

(#420)

(#3451)

(#842)

(#1284)

(#1176)

(#1048)

(#2596)

(#3471)

(#1484)

(#1077)

(#854)

(#3511)

(#2261)

(#2980)

(#884)

(#3452)

(#1605)

(#1533)

(#3379)

A: Following , the request is closed once it is added to this list. If someone chooses to implement the provider, they re-open the issue.

DNSControl tries to make writing a provider as easy as possible. DNSControl does most of the work for you, you only have to write code to authenticate, download DNS records, and perform create/modify/delete operations on those records. Please read the directions for . The DNS maintainers will gladly coach you through the process.

1984 Hosting
Alibaba Cloud DNS
BookMyName
Constellix (DNSMadeEasy)
CoreDNS
EU.ORG
EnCirca
GoDaddy
IPv64
Imperva
Infoblox DNS
Joker.com
Netim
Plesk
Rackspace Cloud DNS
RcodeZero
Spaceship
SynergyWholesale
UltraDNS by Neustar / CSCGlobal
Vercel
the bug triage process
Writing new DNS providers
Concurrency Verified
ALIAS
CAA
AUTODNSSEC
HTTPS
LOC
NAPTR
PTR
SOA
SRV
SSHFP
SVCB
TLSA
DS
DHCID
DNAME
DNSKEY
AKAMAIEDGEDNS
AUTODNS
AXFRDDNS
AZURE_DNS
AZURE_PRIVATE_DNS
BIND
BUNNY_DNS
CLOUDFLAREAPI
CLOUDNS
CNR
CSCGLOBAL
DESEC
DIGITALOCEAN
DNSIMPLE
DNSMADEEASY
DNSOVERHTTPS
DOMAINNAMESHOP
DYNADOT
EASYNAME
EXOSCALE
GANDI_V5
GCLOUD
GCORE
HEDNS
HETZNER
HEXONET
HOSTINGDE
HUAWEICLOUD
INTERNETBS
INWX
LINODE
LOOPIA
LUADNS
MSDNS
MYTHICBEASTS
NAMECHEAP
NAMEDOTCOM
NETCUP
NETLIFY
NS1
OPENSRS
ORACLE
OVH
PACKETFRAME
PORKBUN
POWERDNS
REALTIMEREGISTER
ROUTE53
RWTH
SAKURACLOUD
SOFTLAYER
TRANSIP
VULTR
AZURE_DNS
BIND
CLOUDFLAREAPI
CSCGLOBAL
GCLOUD
MSDNS
ROUTE53
AZURE_PRIVATE_DNS
AKAMAIEDGEDNS
AXFRDDNS
BUNNY_DNS
CLOUDFLAREAPI
CLOUDNS
CNR
CSCGLOBAL
DESEC
DIGITALOCEAN
DNSIMPLE
DNSMADEEASY
DNSOVERHTTPS
DOMAINNAMESHOP
EASYNAME
EXOSCALE
GANDI_V5
GCORE
HEDNS
HETZNER
HEXONET
HOSTINGDE
HUAWEICLOUD
INTERNETBS
INWX
LINODE
LOOPIA
LUADNS
NAMECHEAP
NETCUP
NETLIFY
NS1
OPENSRS
ORACLE
OVH
PACKETFRAME
POWERDNS
REALTIMEREGISTER
ROUTE53
RWTH
SAKURACLOUD
SOFTLAYER
TRANSIP
VULTR