Skip to content

DNS Zones

DNS zones allow you to manage domains directly through brdz, enabling complete control over DNS records.

A DNS zone represents a domain name that you control. Once you create a zone, you can:

  • Manage DNS records (A, AAAA, CNAME, MX, TXT, etc.)
  • Delegate nameserver authority to brdz
  • Integrate DNS management with your deployments

Create a new DNS zone for a domain you own:

Terminal window
brdz dns:zones:create example.com

After creating a zone, you’ll receive:

  • Nameserver addresses to configure at your registrar
  • Zone ID for managing records
  • Verification instructions

Requirements:

  • You must own the domain
  • Domain must be a valid root domain (not a subdomain)
Terminal window
# Create zone for root domain
brdz dns:zones:create example.com
# Create zone for another domain
brdz dns:zones:create mysite.io
# Create zone for country TLD
brdz dns:zones:create example.co.uk

View all your DNS zones:

Terminal window
brdz dns:zones:list

Output example:

ID Domain Status Created At
1 example.com active 2025-01-18 10:30:00
2 mysite.io pending 2025-01-18 14:20:00
3 test.dev verified 2025-01-17 16:45:00
  • pending - Waiting for nameserver delegation
  • verified - Nameservers configured correctly
  • active - Zone is fully operational
  • inactive - Zone has been deactivated

Get detailed information about a specific zone:

Terminal window
brdz dns:zones:get <zone>

Output includes:

  • Zone ID
  • Domain name
  • Status
  • Nameserver addresses
  • Creation timestamp
  • Verification status

After creating a zone, verify that nameservers are configured correctly:

Terminal window
brdz dns:zones:verify <zone>

This command checks:

  • Nameserver delegation at your registrar
  • DNS propagation status
  • Zone authority

To activate your zone, configure these nameservers at your domain registrar:

ns1.brdz-dns.com
ns2.brdz-dns.com
ns3.brdz-dns.com
ns4.brdz-dns.com

Note: Nameserver addresses may vary - check your zone details for the exact addresses.

After updating nameservers:

  • Changes can take up to 48 hours to propagate globally
  • Run dns:zones:verify to check status
  • Records won’t resolve until verification completes

Temporarily deactivate a zone without deleting it:

Terminal window
brdz dns:zones:deactivate <zone>

Deactivated zones:

  • Retain all DNS records
  • Stop responding to queries
  • Can be reactivated later

Permanently delete a DNS zone:

Terminal window
brdz dns:zones:delete <zone>

Warning: This action:

  • Deletes all DNS records in the zone
  • Cannot be undone
  • Stops DNS resolution immediately
Terminal window
brdz dns:zones:create example.com

Note the zone ID from the output.

Update nameservers at your domain registrar to point to brdz nameservers.

Terminal window
brdz dns:zones:verify <zone>

Wait for verification to complete (may take up to 48 hours).

Terminal window
brdz dns:records:create example.com A 192.0.2.1 --zone <zone>
brdz dns:records:create www.example.com CNAME example.com --zone <zone>
  1. Verify before adding records - Ensure zone is verified before creating records
  2. Keep registrar access - Maintain access to change nameservers back if needed
  3. Document zone IDs - Store zone IDs for scripting and automation
  4. Test with staging domains - Try DNS management on test domains first
  5. Monitor verification - Check verification status regularly
  6. Plan migrations - Have a rollback plan when migrating DNS
Terminal window
# Create zone for your app domain
brdz dns:zones:create myapp.com
# Add records for app
brdz dns:records:create myapp.com A 192.0.2.1 --zone <zone>
brdz dns:records:create www.myapp.com CNAME myapp.com --zone <zone>
Terminal window
# Create MX records
brdz dns:records:create example.com MX mail.example.com --zone <zone> --prio 10
# Add SPF record
brdz dns:records:create example.com TXT "v=spf1 include:_spf.example.com ~all" --zone <zone>
Terminal window
# Production on root domain
brdz dns:records:create example.com A 192.0.2.1 --zone <zone>
# Staging on subdomain
brdz dns:records:create staging.example.com A 192.0.2.2 --zone <zone>

If verification fails:

  1. Check nameservers are correctly configured at registrar
  2. Wait for DNS propagation (up to 48 hours)
  3. Use dig example.com NS to check delegation
  4. Verify there are no typos in nameserver addresses

If records aren’t resolving:

  1. Verify zone is active: brdz dns:zones:get <zone>
  2. Check records exist: brdz dns:records:list --zone <zone>
  3. Wait for DNS propagation
  4. Test with: dig @ns1.brdz-dns.com example.com

If zone deletion fails:

  1. Delete all DNS records first
  2. Verify you have permission
  3. Check zone isn’t locked

Create a new DNS zone.

Arguments:

  • domain - Root domain name (required)

Example:

Terminal window
brdz dns:zones:create example.com

List all DNS zones.

Example:

Terminal window
brdz dns:zones:list

Get detailed information about a DNS zone.

Arguments:

  • zone - Zone name (required)

Example:

Terminal window
brdz dns:zones:get abc123

Verify nameserver configuration for a zone.

Arguments:

  • zone - Zone name (required)

Example:

Terminal window
brdz dns:zones:verify abc123

Deactivate a DNS zone.

Arguments:

  • zone - Zone name (required)

Example:

Terminal window
brdz dns:zones:deactivate abc123

Delete a DNS zone permanently.

Arguments:

  • zone - Zone name (required)

Example:

Terminal window
brdz dns:zones:delete abc123