A CLI tool that allows you to manage DNS records across various DNS providers using environment variables for authentication.
Usage:
dli [command]
Available Commands:
append Append DNS records
delete Delete DNS records
help Help about any command
list List DNS records
list-zones List DNS zones
set Set DNS records
Flags:
--env string Path to environment file (variables in file override system environment)
-h, --help help for dli
--json Output in JSON format
--provider string DNS provider (e.g., bunny, cloudflare, route53)
--zone string DNS zone to manage
Use "dli [command] --help" for more information about a command.
Below are all the LibDNS providers. Many are not yet updated to support libdns 1.1.0 so are not implemented in this project yet. Environment variable names are chosen to match https://github.com/go-acme/lego/ to allow the easy reuse of environment files.
- [!] alidns (incompatible with current libdns - Record struct interface mismatch)
- [!] autodns (incompatible with current libdns - Record struct interface mismatch)
- azure - Environment variables:
AZURE_SUBSCRIPTION_ID+AZURE_RESOURCE_GROUP+ optionalAZURE_TENANT_ID+ optionalAZURE_CLIENT_ID+ optionalAZURE_CLIENT_SECRET - bunny - Environment variable:
BUNNY_API_KEY - [!] civo (incompatible with current libdns - Record struct interface mismatch)
- cloudflare - Environment variable:
CF_DNS_API_TOKENorCLOUDFLARE_DNS_API_TOKEN - cloudns - Environment variables:
CLOUDNS_AUTH_ID+CLOUDNS_AUTH_PASSWORD+ optionalCLOUDNS_SUB_AUTH_ID - [!] ddnss (incompatible with current libdns - Record struct interface mismatch)
- desec - Environment variable:
DESEC_TOKEN - digitalocean - Environment variable:
DO_AUTH_TOKEN - [!] dinahosting (incompatible with current libdns - Record struct interface mismatch)
- [!] directadmin (incompatible with current libdns - Record struct interface mismatch)
- [!] dnsexit (incompatible with current libdns - Record struct interface mismatch)
- [!] dnsmadeeasy (incompatible with current libdns - Record struct interface mismatch)
- [!] dnspod (incompatible with current libdns - Record struct interface mismatch)
- dnsimple - Environment variable:
DNSIMPLE_OAUTH_TOKEN+ optionalDNSIMPLE_BASE_URL - [!] dode (incompatible with current libdns - only supports RecordAppender and RecordDeleter)
- [!] dreamhost (incompatible with current libdns - Record struct interface mismatch)
- duckdns - Environment variable:
DUCKDNS_TOKEN - [!] dynv6 (incompatible with current libdns - Record struct interface mismatch)
- dynu - Environment variable:
DYNU_API_KEY - [!] easydns (incompatible with current libdns - Record struct interface mismatch)
- [!] exoscale (incompatible with current libdns - Record struct interface mismatch)
- gandi
- gcore
- glesys - Environment variables:
GLESYS_API_USER+GLESYS_API_KEY - godaddy
- googleclouddns - Environment variables:
GCE_PROJECT+GCE_SERVICE_ACCOUNTorGCE_SERVICE_ACCOUNT_FILE - he - Environment variable:
HURRICANE_TOKENSorHE_API_KEY - hetzner - Environment variable:
HETZNER_API_KEY - hexonet
- [!] hosttech (incompatible with current libdns - Record struct interface mismatch)
- [!] huaweicloud (incompatible with current libdns)
- inwx - Environment variables:
INWX_USERNAME+INWX_PASSWORD+ optionalINWX_SHARED_SECRET - ionos
- leaseweb
- linode
- loopia - Environment variables:
LOOPIA_API_USER+LOOPIA_API_PASSWORD - luadns - Environment variables:
LUADNS_API_USERNAME+LUADNS_API_TOKEN - mailinabox - Environment variables:
MAILINABOX_BASE_URL+MAILINABOX_EMAIL+MAILINABOX_PASSWORD - metaname - Environment variables:
METANAME_API_KEY+METANAME_ACCOUNT_REFERENCE - mijnhost - Environment variable:
MIJNHOST_API_KEY - [!] mythicbeasts (incompatible with current libdns - Record struct interface mismatch)
- [!] namecheap (incompatible with current libdns)
- namedotcom
- namesilo
- netcup - Environment variables:
NETCUP_CUSTOMER_NUMBER+NETCUP_API_KEY+NETCUP_API_PASSWORD - netlify
- nfsn - Environment variables:
NEARLYFREESPEECH_LOGIN+NEARLYFREESPEECH_API_KEY - nicrudns
- njalla
- openstack-designate
- ovh - Environment variables:
OVH_APPLICATION_KEY+OVH_APPLICATION_SECRET+OVH_CONSUMER_KEY+OVH_ENDPOINT - porkbun - Environment variables:
PORKBUN_API_KEY+PORKBUN_SECRET_API_KEY - powerdns
- rfc2136
- [!] route53 (incompatible with current libdns)
- scaleway - Environment variables:
SCW_SECRET_KEY+SCW_PROJECT_ID - selectel
- tencentcloud
- timeweb
- totaluptime
- transip
- vercel
- vultr - Environment variable: VULTR_API_KEY
- westcn - Environment variables:
WESTCN_USERNAME+WESTCN_API_PASSWORD