Guide to Custom dnsadmin Plugins

Introduction

Custom dnsadmin plugins can update DNS records on external systems. To create a custom dnsadmin plugin, you must write both of the following modules:

  • The Setup module — The Setup module creates the node configuration file for a new DNS node.
  • The Remote module — The Remote module communicates with other servers in the DNS cluster.

Warning:

Servers that use custom dnsadmin plugins must disable the dnsadmin checkbox for the Dormant services setting in the Softwaresection of WHM's Tweak Settings interface (Home >> Server Configuration >> Tweak Settings).

The dnsadmin system

The dnsadmin system manages local DNS zones and communicates with remote systems (nodes) in your DNS cluster. 

When you call a DNS-related API function, the dnsadmin system can make a second call to an external API. The initial WHM API function's result determines the response function that the dnsadmin system calls. The dnsadmin system always makes this call to every node in the DNS cluster.

  • The dnsadmin system passes the action to the nodes for the account that made the request. Each node has a specific role that determines which commands it can send and receive.
  • The system assigns each action a dnsuniqid identification value. This ID is a random string that prevents duplicate actions in complicated peering setups in which member servers may repeat a single request.

Test your modules

After you create your custom Setup and Remote modules and store them in the appropriate directories, perform the following steps to test them:

  1. On a development cPanel & WHM server, navigate to WHM's DNS Cluster interface (Home >> Clusters >> DNS Cluster).
  2. The Backend Type menu should include your custom server type.
    • If the menu correctly includes your custom server type, select it.
    • If your custom server type does not appear in the menu, check to ensure that the file is in the /usr/local/cpanel/Cpanel/NameServer/Setup/Remote/ directory.
  3. Click Configure. A new interface will appear.
  4. The interface should include your custom form.
    • If the interface appears as expected, enter the appropriate data and click Submit.
    • If the interface does not appear as expected, check for errors in the get_config() subroutine in your Setup module.
  5. After you click Submit, the Setup module's setup() subroutine handles the data. A message of success or failure appears.

 

  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

The cPanel Interface

For  cPanel  &  WHM  version  58 Overview The cPanel interface is...

User Preferences

For cPanel & WHM version 58 Overview This document outlines how to access your cPanel...

Manage External Authentications

For cPanel & WHM version 58 Overview Manage credentials Additional documentation...

What is cPanelID?

In This Article:  Overview ServicesHow to get a cPanelID cPanelID External...

Guide to cPanel Interface Customization - cPanel Style Development

Introduction You can develop custom styles that modify the appearance of the cPanel interface....