๐ŸŸข Network Status| First month from $2.00 โ€” fully managed | Contact Support
Skip to content
Need help? Real engineers available 24/7. Average response under 15 minutes. Open a support ticket โ†’

Create Custom DNS Zones in WHM โ€‹

WHM includes a full DNS server (BIND). This guide covers adding DNS zones, editing records, and the most common record types you'll work with.

Adding a new DNS zone โ€‹

A DNS zone needs to exist before a domain can be hosted or have DNS records managed from WHM.

  1. Go to DNS Functions โ†’ Add DNS Zone.
  2. Enter the IP Address the zone's A record should point to (your server IP).
  3. Enter the Domain name.
  4. Click Add. WHM creates the zone with default records (A, MX, NS, SOA).
โ„น
Zones are created automatically for new accounts
When you create a cPanel account, WHM automatically creates the DNS zone for the primary domain. You only need to manually add a zone for domains that aren't attached to a cPanel account.

Editing a DNS zone โ€‹

  1. Go to DNS Functions โ†’ Edit DNS Zone
  2. Select the domain from the dropdown
  3. The zone editor shows all existing records
  4. Modify values directly in the text fields
  5. Click Save when done

Common record types โ€‹

A record โ€‹

Maps a hostname to an IPv4 address.

NameTTLTypeValue
yourdomain.com.14400A1.2.3.4
www14400A1.2.3.4
mail14400A1.2.3.4

CNAME record โ€‹

Creates an alias pointing one hostname to another. Cannot be used on the root domain (@).

NameTTLTypeValue
shop14400CNAMEstores.shopify.com.
blog14400CNAMEyourdomain.com.

MX record โ€‹

Routes email for the domain to the correct mail server.

NameTTLTypePriorityValue
yourdomain.com.14400MX0mail.yourdomain.com.

TXT record โ€‹

Used for SPF, DKIM, DMARC, and domain verification. No limit on number of TXT records.

NameTTLTypeValue
yourdomain.com.14400TXTv=spf1 ip4:1.2.3.4 include:mailchannels.net ~all
_dmarc14400TXTv=DMARC1; p=quarantine; rua=mailto:dmarc@yourdomain.com
โš 
Always end hostnames with a period
In the WHM zone editor, fully qualified domain names must end with a period: mail.yourdomain.com. not mail.yourdomain.com. Missing the trailing period causes the server to append the zone name, creating incorrect records.

Checking DNS from command line โ€‹

bash
# Check A record
dig yourdomain.com A +short

# Check MX
dig yourdomain.com MX +short

# Check all TXT records
dig yourdomain.com TXT +short

# Check from a specific nameserver
dig @ns1.remarkablecloud.com yourdomain.com A

Reloading DNS after changes โ€‹

WHM reloads BIND automatically when you save a zone. If changes don't appear immediately, force a reload:

bash
/scripts/restartsrv_named

Managed hosting that actually manages.