github.com/StackExchange/dnscontrol/v4@v4.11.0/documentation/provider/hexonet.md (about)

     1  HEXONET is a leading developer and operator of domain names and DNS platforms.
     2  Individual, service provider and registrars around the globe choose HEXONET for
     3  domains and DNS because of our advanced technology, operational performance and
     4  up-time, and most importantly for DNS expertise. DNSControl with HEXONET's DNS
     5  marries DNS automation with an industry-leading DNS platform that supports DNSSEC,
     6  PremiumDNS via Anycast Network, and nearly all of DNSControl's listed provider features.
     7  
     8  This is based on API documents found at [https://wiki.hexonet.net/wiki/DNS_API](https://wiki.hexonet.net/wiki/DNS_API)
     9  
    10  ## Configuration
    11  
    12  To use this provider, add an entry to `creds.json` with `TYPE` set to `HEXONET`
    13  along with your HEXONET login data.
    14  
    15  Example:
    16  
    17  {% code title="creds.json" %}
    18  ```json
    19  {
    20    "hexonet": {
    21      "TYPE": "HEXONET",
    22      "apilogin": "your-hexonet-account-id",
    23      "apipassword": "your-hexonet-account-password",
    24      "apientity": "LIVE", // for the LIVE system; use "OTE" for the OT&E system
    25      "ipaddress": "172.31.3.16", // provide here your outgoing ip address
    26      "debugmode": "0", // set it to "1" to get debug output of the communication with our Backend System API
    27    }
    28  }
    29  ```
    30  {% endcode %}
    31  
    32  Here a working example for our OT&E System:
    33  
    34  {% code title="creds.json" %}
    35  ```json
    36  {
    37    "hexonet": {
    38      "TYPE": "HEXONET",
    39      "apilogin": "test.user",
    40      "apipassword": "test.passw0rd",
    41      "apientity": "OTE",
    42      "debugmode": "0"
    43    }
    44  }
    45  ```
    46  {% endcode %}
    47  
    48  {% hint style="info" %}
    49  **NOTE**: The above credentials are known to the public.
    50  {% endhint %}
    51  
    52  With the above hexonet entry in `creds.json`, you can run the
    53  integration tests as follows:
    54  
    55  ```shell
    56  dnscontrol get-zones --format=nameonly hexonet HEXONET  all
    57  ```
    58  ```shell
    59  # Review the output.  Pick one domain and set HEXONET_DOMAIN.
    60  export HEXONET_DOMAIN=yodream.com            # Pick a domain name.
    61  export HEXONET_ENTITY=OTE
    62  export HEXONET_UID=test.user
    63  export HEXONET_PW=test.passw0rd
    64  cd integrationTest              # NOTE: Not needed if already in that subdirectory
    65  go test -v -verbose -provider HEXONET
    66  ```
    67  
    68  ## Usage
    69  
    70  Here's an example DNS Configuration `dnsconfig.js` using our provider module.
    71  Even though it shows how you use us as Domain Registrar AND DNS Provider, we don't force you to do that.
    72  You are free to decide if you want to use both of our provider technology or just one of them.
    73  
    74  {% code title="dnsconfig.js" %}
    75  ```javascript
    76  var REG_HEXONET = NewRegistrar("hexonet");
    77  var DSP_HEXONET = NewDnsProvider("hexonet");
    78  
    79  // Set Default TTL for all RR to reflect our Backend API Default
    80  // If you use additional DNS Providers, configure a default TTL
    81  // per domain using the domain modifier DefaultTTL instead.
    82  // also check this issue for [NAMESERVER TTL](https://github.com/StackExchange/dnscontrol/issues/176).
    83  DEFAULTS(
    84      {"ns_ttl":"3600"},
    85      DefaultTTL(3600)
    86  );
    87  
    88  D("example.com", REG_HEXONET, DnsProvider(DSP_HEXONET),
    89      NAMESERVER("ns1.ispapi.net"),
    90      NAMESERVER("ns2.ispapi.net"),
    91      NAMESERVER("ns3.ispapi.net"),
    92      NAMESERVER("ns4.ispapi.net"),
    93      A("elk1", "10.190.234.178"),
    94      A("test", "56.123.54.12"),
    95  END);
    96  ```
    97  {% endcode %}
    98  
    99  ## Metadata
   100  
   101  This provider does not recognize any special metadata fields unique to HEXONET.
   102  
   103  ## get-zones
   104  
   105  `dnscontrol get-zones` is implemented for this provider. The list
   106  includes both basic and premier zones.
   107  
   108  ## New domains
   109  
   110  If a dnszone does not exist in your HEXONET account, DNSControl will *not* automatically add it with the `dnscontrol push` or `dnscontrol preview` command. You'll need to do that via the control panel manually or using the command `dnscontrol create-domains`.
   111  This is because it could lead to unwanted costs on customer-side that we want to avoid.
   112  
   113  ## Debug Mode
   114  
   115  As shown in the configuration examples above, this can be activated on demand and it can be used to check the API commands send to our system.
   116  In general this is thought for our purpose to have an easy way to dive into issues. But if you're interested what's going on, feel free to activate it.
   117  
   118  ## IP Filter
   119  
   120  In case you have ip filter settings made for your HEXONET account, please provide your outgoing ip address as shown in the configuration examples above.