Windows DNS Delegation

DNS delegation is necessary whenever a subdomain is hosted outside the authoritative DNS server for the parent zone. In this environment, the domain controller hosts the internal refol.us zone for Active Directory, but certain subdomains are managed externally on Cloudflare. Because Windows DNS is authoritative for the entire parent zone, it will never forward queries for any name inside refol.us unless a delegation explicitly tells it to.

A delegation creates a formal handoff inside the DNS hierarchy. It instructs the parent zone that:

“I am authoritative for refol.us, but the nameservers for delegated.refol.us are located elsewhere.”

This ensures that:

Delegation is the required mechanism for cleanly separating internal AD‑managed DNS from externally hosted subdomains, while preserving correct resolution across the entire namespace.


Steps

The following steps shows how to delegate a host inside the refol.us domain named, “delegated.”

Enumerate Nameserver and IPs

This example uses Cloudflare as the forwarding DNS.

brenna.ns.cloudflare.com → 108.162.193.11
vick.ns.cloudflare.com   → 172.64.33.11

Delegate the subzone

Add the delegation for each name server.

Add-DnsServerZoneDelegation `
    -Name "refol.us" `
    -ChildZoneName "delegated" `
    -NameServer "brenna.ns.cloudflare.com" `
    -IPAddress "108.162.193.11"
Add-DnsServerZoneDelegation `
    -Name "refol.us" `
    -ChildZoneName "delegated" `
    -NameServer "vick.ns.cloudflare.com" `
    -IPAddress "172.64.33.11"

**Add nameserver records to the parent zone

This is optional but recommended. Again, execute the command for each nameserver.

Add-DnsServerResourceRecord -ZoneName "refol.us" -NS -Name "delegated" -NameServer "brenna.ns.cloudflare.com"
Add-DnsServerResourceRecord -ZoneName "refol.us" -NS -Name "delegated" -NameServer "vick.ns.cloudflare.com"

Add glue A records

This is required for external nameservers. Again, execute the command for each nameserver.

Add-DnsServerResourceRecordA -ZoneName "refol.us" -Name "brenna.ns.cloudflare.com" -IPv4Address "108.162.193.11"
Add-DnsServerResourceRecordA -ZoneName "refol.us" -Name "vick.ns.cloudflare.com" -IPv4Address "172.64.33.11"

Verify delegation

Get-DnsServerZoneDelegation -ZoneName "refol.us"

You should see two entries for the delegated zone.


Test resolution

Clear-DnsServerCache -Force
ipconfig /flushdns
nslookup delegated.refol.us 192.168.20.251

You should now see Cloudflare answering instead of NXDOMAIN.