Global – Whitelabel

  WEDOS Global

In this article, you will learn:

WEDOS Global Whitelabel

Whitelabel allows you to use your own interface and DNS while also using our infrastructure to handle the actual traffic. This requires you to use our DNS servers as secondary to your authoritative ones. Such a setup enables you to create domain DNS in our system as well as yours, and for them to communicate via AXFR. You or your users still manage everything in your system, and the changes are reflected according to the TTL set in the SOA record.

Integrating WEDOS Global

Before you start integrating WEDOS Global, make sure you meet the following prerequisites:

To get the maximum out of your WEDOS Global whitelabel, do the following:

  1. Set up and test WEDOS API
  2. Automate creating secondary DNS zone files on WEDOS NS
  3. Update DNS server settings

1. WEDOS API Setup

WEDOS API, WAPI for short, lets you manage select parts of our system from your own application.

To activate WAPI from the WEDOS Global admin panel, follow the guide Global – WAPI Activation.

Familiarize yourself with the WAPI manual. You can perform tests using the ping command, to make sure that:

  • WAPI allows the correct IP addresses.
  • The username and authentication information are configured correctly.

2. Automate WEDOS DNS

Once WAPI is correctly configured, move on to setting up the dns-domain-add command to automate creating secondary DNS zone files on our servers. Use the following JSON template:

{
"request": {
"user": "your-login-email@adress.tld",
"auth": "generated-authentication-string",
"command": "dns-domain-add",
"clTRID": "your-own-id",
"data": {
"name": "domainname.tld",
"type": "secondary",
"primary_ip": "authoritative.server.ipv4.address"
}
}
}

Sample PHP script for adding secondary zone files

This scripts loads a list of domains to add from a domains.txt file.

<?php
// Set CEST timezone for timestamp verification
date_default_timezone_set('Europe/Prague'); 

// WEDOS WAPI credentials and settings
$wapiUrl = 'https://api.wedos.com/wapi/json';
$wapiLogin = 'your_wapi_login';
$wapiPassword = 'your_wapi_password';

// Function to make WAPI requests
function wapiRequest($command, $data) {
    global $wapiUrl, $wapiLogin, $wapiPassword;

    // Construct the authorization string
    $dateHour = date('H', time());
    $auth = sha1($wapiLogin . sha1($wapiPassword) . $dateHour);

    // Construct the request payload
    $payload = array(
        'request' => array(
            'user' => $wapiLogin,
            'auth' => $auth,
            'command' => $command,
            'data' => $data,
            'clTRID' => 'custom-client-identifier-' . date('YmdHis'),
        )
    );

    // Initialize cURL session
    $ch = curl_init($wapiUrl);

    // Set cURL options
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array('request' => json_encode($payload))));

    // Execute cURL session
    $response = curl_exec($ch);

    // Close cURL session
    curl_close($ch);

    return json_decode($response, true);
}

// Read domains from the TXT file
$domains = file('domains.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

// Process each domain for secondary DNS creation
foreach ($domains as $domain) {
  // Placeholder for secondary DNS settings according to WAPI documentation
  $secondaryDnsSettings = array(
    'type'        => 'secondary',
    'primary_ip'  => 'authoritative_dns_server_ip',
  );
    $response = wapiRequest('dns-domain-add', array_merge(array('name' => $domain), $secondaryDnsSettings));

    // Handle the response
    if (isset($response['response']) && $response['response']['code'] == '1000') {
        echo 'Successfully added secondary DNS for domain: ' . $domain . "\n";
    } else {
        echo 'Failed to add secondary DNS for domain: ' . $domain . '. Response: ' . json_encode($response) . "\n";
    }
}

?>

3. Update DNS Servers

When you’re able to reliably create secondary DNS zone files via WAPI, contact us to double-check from our side and send further instructions. We will get back to you with a list of new IP addresses for you to configure on your servers. For example, if your server ns.domain.tld uses the address 46.28.104.67, you will need to change it to a different IP address, which we will tell you.

Once the changes propagate, your DNS will benefit from our world-wide server network.

Billing

Billing is handled by WEDOS credit account in a special mode:

  • Every transaction is recorded in the system.
  • On the 1st day of each month, the previous month’s transactions are tallied and invoiced.
  • The invoice is due on the 15th of that month.

FAQ

Question: Is there a trial period?
Answer: Yes, consult your sales representative during the service negotiation for details.

Question: What features does your DNS support?
Answer: We support IPv4/IPv6, DNSSEC, and the ALIAS/ANAME record.

Question: Where are your servers located?
Answer: You can check the current list of locations on the WEDOS Global product page. We also use Amazon AWS as backup.

Question: How do I revert to my own solution?
Answer: Change your DNS server IPs back to the state before you switched to ours.

Děkujeme za zpětnou vazbu!