mirror of
https://github.com/StackExchange/dnscontrol.git
synced 2025-11-10 08:20:35 +08:00
DOC: Apply brand-preferred case (#429)
* Apply brand-preferred case * Apply case to own branding as well
This commit is contained in:
parent
608dd7af56
commit
b3e35b56a2
15 changed files with 32 additions and 33 deletions
10
README.md
10
README.md
|
|
@ -7,7 +7,7 @@
|
||||||
DNSControl is a system for maintaining DNS zones. It has two parts:
|
DNSControl is a system for maintaining DNS zones. It has two parts:
|
||||||
a domain specific language (DSL) for describing DNS zones plus
|
a domain specific language (DSL) for describing DNS zones plus
|
||||||
software that processes the DSL and pushes the resulting zones to
|
software that processes the DSL and pushes the resulting zones to
|
||||||
DNS providers such as Route53, CloudFlare, and Gandi. It can talk
|
DNS providers such as Route53, Cloudflare, and Gandi. It can talk
|
||||||
to Microsoft Active Directory and it generates the most beautiful
|
to Microsoft Active Directory and it generates the most beautiful
|
||||||
BIND zone files ever. It runs anywhere Go runs (Linux, macOS,
|
BIND zone files ever. It runs anywhere Go runs (Linux, macOS,
|
||||||
Windows). The provider model is extensible, so more providers can be added.
|
Windows). The provider model is extensible, so more providers can be added.
|
||||||
|
|
@ -15,8 +15,8 @@ Windows). The provider model is extensible, so more providers can be added.
|
||||||
Currently supported DNS providers:
|
Currently supported DNS providers:
|
||||||
- Active Directory
|
- Active Directory
|
||||||
- BIND
|
- BIND
|
||||||
- CloudFlare
|
- Cloudflare
|
||||||
- Digitalocean
|
- DigitalOcean
|
||||||
- DNSimple
|
- DNSimple
|
||||||
- Exoscale
|
- Exoscale
|
||||||
- Gandi
|
- Gandi
|
||||||
|
|
@ -37,7 +37,7 @@ and subdomains across multiple registrars and DNS providers.
|
||||||
You can think of it as a DNS compiler. The configuration files are
|
You can think of it as a DNS compiler. The configuration files are
|
||||||
written in a DSL that looks a lot like JavaScript. It is compiled
|
written in a DSL that looks a lot like JavaScript. It is compiled
|
||||||
to an intermediate representation (IR). Compiler back-ends use the
|
to an intermediate representation (IR). Compiler back-ends use the
|
||||||
IR to update your DNS zones on services such as Route53, CloudFlare,
|
IR to update your DNS zones on services such as Route53, Cloudflare,
|
||||||
and Gandi, or systems such as BIND and Active Directory.
|
and Gandi, or systems such as BIND and Active Directory.
|
||||||
|
|
||||||
# An Example
|
# An Example
|
||||||
|
|
@ -85,7 +85,7 @@ the variable name throughout the file. Need to change the IP address
|
||||||
globally? Just change the variable and "recompile."
|
globally? Just change the variable and "recompile."
|
||||||
* Macros! Define your SPF records, MX records, or other repeated
|
* Macros! Define your SPF records, MX records, or other repeated
|
||||||
data once and re-use them for all domains.
|
data once and re-use them for all domains.
|
||||||
* Control CloudFlare from a single location. Enable/disable
|
* Control Cloudflare from a single location. Enable/disable
|
||||||
Cloudflare proxying (the "orange cloud" button) directly from your
|
Cloudflare proxying (the "orange cloud" button) directly from your
|
||||||
DNSControl files.
|
DNSControl files.
|
||||||
* Keep similar domains in sync with transforms and other features.
|
* Keep similar domains in sync with transforms and other features.
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ parameters:
|
||||||
- modifiers...
|
- modifiers...
|
||||||
---
|
---
|
||||||
|
|
||||||
`CF_REDIRECT` uses CloudFlare-specific features ("page rules") to
|
`CF_REDIRECT` uses Cloudflare-specific features ("page rules") to
|
||||||
generate an HTTP 301 redirect.
|
generate an HTTP 301 redirect.
|
||||||
|
|
||||||
WARNING: If the domain has other pagerules in place, they may be
|
WARNING: If the domain has other pagerules in place, they may be
|
||||||
|
|
|
||||||
|
|
@ -119,7 +119,7 @@ D('example2.tld', REG_NONE, DnsProvider(CLOUDFLARE),
|
||||||
DNSControl depends on a Cloudflare Global API Key that's available under "My Settings".
|
DNSControl depends on a Cloudflare Global API Key that's available under "My Settings".
|
||||||
|
|
||||||
## New domains
|
## New domains
|
||||||
If a domain does not exist in your CloudFlare account, DNSControl
|
If a domain does not exist in your Cloudflare account, DNSControl
|
||||||
will *not* automatically add it. You'll need to do that via the
|
will *not* automatically add it. You'll need to do that via the
|
||||||
control panel manually or via the `dnscontrol create-domains` command.
|
control panel manually or via the `dnscontrol create-domains` command.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ jsId: DIGITALOCEAN
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
In your credentials file, you must provide your
|
In your credentials file, you must provide your
|
||||||
[Digitalocean OAuth Token](https://cloud.digitalocean.com/settings/applications)
|
[DigitalOcean OAuth Token](https://cloud.digitalocean.com/settings/applications)
|
||||||
|
|
||||||
{% highlight json %}
|
{% highlight json %}
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,9 @@ jsId: HEXONET
|
||||||
HEXONET is a leading developer and operator of domain names and DNS platforms.
|
HEXONET is a leading developer and operator of domain names and DNS platforms.
|
||||||
Individual, service provider and registrars around the globe choose HEXONET for
|
Individual, service provider and registrars around the globe choose HEXONET for
|
||||||
domains and DNS because of our advanced technology, operational performance and
|
domains and DNS because of our advanced technology, operational performance and
|
||||||
up-time, and most importantly for DNS expertise. DnsControl with HEXONET's DNS
|
up-time, and most importantly for DNS expertise. DNSControl with HEXONET's DNS
|
||||||
marries DNS automation with an industry-leading DNS platform that supports DNSSEC,
|
marries DNS automation with an industry-leading DNS platform that supports DNSSEC,
|
||||||
PremiumDNS via Anycast Network, and nearly all of DnsControl's listed provider features.
|
PremiumDNS via Anycast Network, and nearly all of DNSControl's listed provider features.
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
---
|
---
|
||||||
layout: default
|
layout: default
|
||||||
title: DnsControl
|
title: DNSControl
|
||||||
---
|
---
|
||||||
|
|
||||||
<div class="row jumbotron">
|
<div class="row jumbotron">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div>
|
<div>
|
||||||
<h1 class="hometitle">DnsControl</h1>
|
<h1 class="hometitle">DNSControl</h1>
|
||||||
<p class="lead">DnsControl is an <strong><a href="opinions">opinionated</a></strong> platform for seamlessly managing your DNS configuration across any number of DNS hosts, both in the cloud or in your own infrastructure. It manages all of the domains for the Stack Overflow network, and can do the same for you!</p>
|
<p class="lead">DNSControl is an <strong><a href="opinions">opinionated</a></strong> platform for seamlessly managing your DNS configuration across any number of DNS hosts, both in the cloud or in your own infrastructure. It manages all of the domains for the Stack Overflow network, and can do the same for you!</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,12 @@ title: Let's Encrypt Certificate generation
|
||||||
|
|
||||||
The `dnscontrol get-certs` command will obtain or renew TLS certificates for your managed domains via [*Let's Encrypt*](https://letsencrypt.org). This can be extremely useful in situations where other acme clients are problematic. Specifically, this may be useful if:
|
The `dnscontrol get-certs` command will obtain or renew TLS certificates for your managed domains via [*Let's Encrypt*](https://letsencrypt.org). This can be extremely useful in situations where other acme clients are problematic. Specifically, this may be useful if:
|
||||||
|
|
||||||
- You are already managing dns records with DnsControl.
|
- You are already managing dns records with DNSControl.
|
||||||
- You have a large number of domains or dns providers in complicated configurations.
|
- You have a large number of domains or dns providers in complicated configurations.
|
||||||
- You want **wildcard** certificates, which *require* dns validation.
|
- You want **wildcard** certificates, which *require* dns validation.
|
||||||
|
|
||||||
At stack overflow we have dual-hosted dns, with most domains having four nameservers from two different cloud DNS providers. DnsControl uses
|
At stack overflow we have dual-hosted dns, with most domains having four nameservers from two different cloud DNS providers. DNSControl uses
|
||||||
the exact same code as the core DnsControl commands to issue certificates. This means is will work the same regardless of your domain layout or what providers you use.
|
the exact same code as the core DNSControl commands to issue certificates. This means is will work the same regardless of your domain layout or what providers you use.
|
||||||
|
|
||||||
## General Process
|
## General Process
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ NS records for the base domain should not be specified manually, as that will re
|
||||||
|
|
||||||
{% include alert.html text="Note: Not all providers allow full control over the NS records of your zone. It is not recommended to use these providers in complicated scenarios such as hosting across multiple providers. See individual provider docs for more info." %}
|
{% include alert.html text="Note: Not all providers allow full control over the NS records of your zone. It is not recommended to use these providers in complicated scenarios such as hosting across multiple providers. See individual provider docs for more info." %}
|
||||||
|
|
||||||
DnsControl will also register the authoritative nameserver list with the registrar, so that all nameserver are used in the tld registry.
|
DNSControl will also register the authoritative nameserver list with the registrar, so that all nameserver are used in the TLD registry.
|
||||||
|
|
||||||
## 3. Backup providers
|
## 3. Backup providers
|
||||||
|
|
||||||
|
|
@ -57,4 +57,3 @@ Its nameservers will not be added to the authoritative set. While this may seem
|
||||||
|
|
||||||
1. Backup nameservers will still be updated with the NS records from the authoritative nameserver list. This means the records will still need to be updated to correctly "activate" the provider.
|
1. Backup nameservers will still be updated with the NS records from the authoritative nameserver list. This means the records will still need to be updated to correctly "activate" the provider.
|
||||||
2. Costs generally scale with utilization, so there is often no real savings associated with an active-passive setup vs an active-active one anyway.
|
2. Costs generally scale with utilization, so there is often no real savings associated with an active-passive setup vs an active-active one anyway.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -608,7 +608,7 @@ var CF_PROXY_DEFAULT_ON = { cloudflare_proxy_default: 'on' };
|
||||||
|
|
||||||
// CUSTOM, PROVIDER SPECIFIC RECORD TYPES
|
// CUSTOM, PROVIDER SPECIFIC RECORD TYPES
|
||||||
|
|
||||||
function _validateCloudFlareRedirect(value) {
|
function _validateCloudflareRedirect(value) {
|
||||||
if (!_.isString(value)) {
|
if (!_.isString(value)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
@ -617,8 +617,8 @@ function _validateCloudFlareRedirect(value) {
|
||||||
|
|
||||||
var CF_REDIRECT = recordBuilder('CF_REDIRECT', {
|
var CF_REDIRECT = recordBuilder('CF_REDIRECT', {
|
||||||
args: [
|
args: [
|
||||||
['source', _validateCloudFlareRedirect],
|
['source', _validateCloudflareRedirect],
|
||||||
['destination', _validateCloudFlareRedirect],
|
['destination', _validateCloudflareRedirect],
|
||||||
],
|
],
|
||||||
transform: function(record, args, modifiers) {
|
transform: function(record, args, modifiers) {
|
||||||
record.name = '@';
|
record.name = '@';
|
||||||
|
|
@ -628,8 +628,8 @@ var CF_REDIRECT = recordBuilder('CF_REDIRECT', {
|
||||||
|
|
||||||
var CF_TEMP_REDIRECT = recordBuilder('CF_TEMP_REDIRECT', {
|
var CF_TEMP_REDIRECT = recordBuilder('CF_TEMP_REDIRECT', {
|
||||||
args: [
|
args: [
|
||||||
['source', _validateCloudFlareRedirect],
|
['source', _validateCloudflareRedirect],
|
||||||
['destination', _validateCloudFlareRedirect],
|
['destination', _validateCloudflareRedirect],
|
||||||
],
|
],
|
||||||
transform: function(record, args, modifiers) {
|
transform: function(record, args, modifiers) {
|
||||||
record.name = '@';
|
record.name = '@';
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ import (
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
||||||
Digitalocean API DNS provider:
|
DigitalOcean API DNS provider:
|
||||||
|
|
||||||
Info required in `creds.json`:
|
Info required in `creds.json`:
|
||||||
- token
|
- token
|
||||||
|
|
@ -39,7 +39,7 @@ var defaultNameServerNames = []string{
|
||||||
// NewDo creates a DO-specific DNS provider.
|
// NewDo creates a DO-specific DNS provider.
|
||||||
func NewDo(m map[string]string, metadata json.RawMessage) (providers.DNSServiceProvider, error) {
|
func NewDo(m map[string]string, metadata json.RawMessage) (providers.DNSServiceProvider, error) {
|
||||||
if m["token"] == "" {
|
if m["token"] == "" {
|
||||||
return nil, errors.Errorf("no Digitalocean token provided")
|
return nil, errors.Errorf("no DigitalOcean token provided")
|
||||||
}
|
}
|
||||||
|
|
||||||
ctx := context.Background()
|
ctx := context.Background()
|
||||||
|
|
|
||||||
2
vendor/github.com/miekg/dns/COPYRIGHT
generated
vendored
2
vendor/github.com/miekg/dns/COPYRIGHT
generated
vendored
|
|
@ -5,5 +5,5 @@ Extensions of the original work are copyright (c) 2011 Miek Gieben
|
||||||
Copyright 2011 Miek Gieben. All rights reserved. Use of this source code is
|
Copyright 2011 Miek Gieben. All rights reserved. Use of this source code is
|
||||||
governed by a BSD-style license that can be found in the LICENSE file.
|
governed by a BSD-style license that can be found in the LICENSE file.
|
||||||
|
|
||||||
Copyright 2014 CloudFlare. All rights reserved. Use of this source code is
|
Copyright 2014 Cloudflare. All rights reserved. Use of this source code is
|
||||||
governed by a BSD-style license that can be found in the LICENSE file.
|
governed by a BSD-style license that can be found in the LICENSE file.
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue