mirror of
https://github.com/StackExchange/dnscontrol.git
synced 2024-11-15 20:55:34 +08:00
31bdb65720
- Fixed indentation - Use same naming scheme for all examples (i.e. all caps for provider, REG prefix for registrar) - Use REG_NONE as registrar when provider does not provide it - Use example.tld for example domain - Use 1.2.3.1/24 IP range for examples - A few spelling fixes
53 lines
1.6 KiB
Markdown
53 lines
1.6 KiB
Markdown
---
|
|
name: SoftLayer DNS
|
|
title: SoftLayer DNS Provider
|
|
layout: default
|
|
jsId: SOFTLAYER
|
|
---
|
|
|
|
# SoftLayer DNS Provider
|
|
|
|
## Configuration
|
|
|
|
To authenticate with SoftLayer requires at least a `username` and `api_key` for authentication.
|
|
It can also optionally take a `timeout` and `endpoint_url` parameter however these are optional and will use standard defaults if not provided.
|
|
These can be supplied via the standard 'creds.json' like so:
|
|
{% highlight json %}
|
|
{
|
|
"softlayer": {
|
|
"username": "myusername",
|
|
"api_key": "mysecretapikey"
|
|
}
|
|
}
|
|
{% endhighlight %}
|
|
|
|
To maintain compatibility with existing softlayer CLI services these can also be provided by the `SL_USERNAME` and `SL_API_KEY` environment variables or specified in the ~/.softlayer.
|
|
More information about these methods can be found at [the softlayer-go library documentation](https://github.com/softlayer/softlayer-go#sessions).
|
|
|
|
## Usage
|
|
|
|
Use this provider like any other DNS Provider:
|
|
|
|
{% highlight js %}
|
|
var REG_NONE = NewRegistrar("none","NONE"); // no registrar
|
|
var SOFTLAYER = NewDnsProvider("softlayer", "SOFTLAYER");
|
|
|
|
D("example.tld", registrary, DnsProvider(SOFTLAYER),
|
|
A("test","1.2.3.4")
|
|
);
|
|
{%endhighlight%}
|
|
|
|
## Metadata
|
|
|
|
This provider does not recognize any special metadata fields unique to SoftLayer dns.
|
|
For compatibility with the pre-generated NAMESERVER fields it's recommended to set the NS TTL to 86400 such as:
|
|
|
|
{% highlight js %}
|
|
D("example.tld", REG_NONE, DnsProvider(SOFTLAYER),
|
|
{"ns_ttl": "86400"},
|
|
|
|
A("test","1.2.3.4")
|
|
);
|
|
{%endhighlight%}
|
|
|
|
`ns_ttl` is a standard metadata field that applies to all providers.
|