Skip to content

Best DNS Settings for Domain Controllers in Windows Server

How to configure DNS on domain controllers the right way: partner-first then loopback, AD-integrated zones, forwarders, and how to avoid the DC islanding problem.

MGMCSA Guru Team June 23, 2026 7 min read
Diagram-style cover showing two domain controllers each pointing their primary DNS at the other and loopback as secondary, with forwarders to an external resolver

DNS is the foundation Active Directory stands on. Domain controllers find each other, clients find DCs, and replication partners locate one another entirely through DNS records. Get the DNS configuration on your DCs wrong and you get problems that look like everything except DNS: failed logons, broken replication, Group Policy that won’t apply.

Most of those problems trace back to a couple of small misconfigurations — usually how a DC points its own DNS client settings, or a DC that’s been left pointing only at itself. Both are easy to fix once you understand why the recommended layout exists.

This guide covers what each DC should use for its own DNS, how AD-integrated zones and secure updates should be set, where forwarders fit, and the classic islanding problem that catches people who configure DNS the “obvious” way.

The core rule: partner first, loopback second

Here’s the single most important setting, and the one most often done wrong. A domain controller that also runs DNS should set:

  • Primary DNS → a different DC running DNS (a replication partner)
  • Secondary DNS → its own loopback (127.0.0.1) or its own static IP

The instinct is to make a DC point at itself first — it is a DNS server, after all. That instinct causes islanding, which we’ll get to. Pointing at a partner first means that during startup, when the DC needs DNS before its own DNS service is fully ready, it can still resolve records from a healthy partner.

Recommended DNS client settings per DC

Two DCs (DC01 / DC02) DC01: primary = DC02, secondary = 127.0.0.1 · DC02: primary = DC01, secondary = 127.0.0.1
Three+ DCs Primary = a partner DC, secondary = another partner DC, tertiary = 127.0.0.1
Loopback entry Always present, but never the only or primary entry
Public resolvers (8.8.8.8 etc.) Never in the client DNS list — use forwarders instead

You can set this in PowerShell rather than clicking through the NIC properties:

# On DC01: point primary at DC02 (10.0.0.12), secondary at loopback
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" `
  -ServerAddresses ("10.0.0.12","127.0.0.1")

The islanding problem

Islanding is what happens when a DC points its primary DNS only at itself. It’s worth understanding because the fix is the rule above, and because the symptom is confusing.

When a DC boots, several things happen close together: the OS starts services, the DNS Server service comes up, AD DS starts, and Netlogon tries to register the DC’s SRV records and locate replication partners. If the DC is configured to resolve DNS only through itself, there’s a window where AD needs DNS but the local DNS service isn’t ready yet, or the local zone data is stale because this DC hasn’t replicated since it rebooted. The DC can fail to find its partners and effectively isolate itself — an island — until something forces it to re-resolve.

Why self-only DNS causes islanding
flowchart TD
A["DC reboots"] --> B{"Primary DNS<br/>points where?"}
B -->|"Only itself"| C["AD needs DNS before<br/>local DNS is ready"]
C --> D["Can't locate partners<br/>= ISLANDED"]
B -->|"A partner DC first"| E["Resolves records<br/>from healthy partner"]
E --> F["Finds partners,<br/>replicates normally"]
Pointing primary DNS at a partner DC breaks the startup chicken-and-egg loop.

Use AD-integrated zones

For the zones that hold your AD records, use Active Directory-integrated zones rather than traditional file-based primary/secondary zones. The difference matters:

  • Replication with AD. Zone data lives in the directory and replicates along with AD, so you don’t maintain a separate zone-transfer topology.
  • Multi-master updates. Any DC running DNS can accept updates, so there’s no single primary zone to lose. A traditional standard primary zone is a single point of failure.
  • Secure dynamic updates. AD-integrated zones can require secure only dynamic updates, so only authenticated domain members can register or change records. This is the recommended setting and blocks unauthenticated machines from hijacking records.

Set dynamic updates to Secure only on your AD zones, and choose a sensible replication scope — to all DNS servers in the forest or in the domain, depending on whether other domains need the zone.

AD-integrated zone settings to verify

  • Forward lookup zone for the AD domain is AD-integrated
  • Dynamic updates set to 'Secure only'
  • _msdcs zone present and AD-integrated (replicated forest-wide)
  • A matching reverse lookup zone exists for your subnets
  • Scavenging of stale records enabled to clean up old DC/host entries
  • Every DC also runs the DNS Server role for resilience

Forwarders and external resolution

DCs are authoritative for your internal AD zones, but they still need to resolve internet names (Windows Update, certificate revocation lists, Microsoft 365 endpoints, and so on). That’s what forwarders are for.

Configure forwarders in the DNS Server role to point at a reliable upstream resolver:

  • Your ISP’s DNS servers, or
  • A public resolver such as 1.1.1.1 or 8.8.8.8.
# Configure DNS forwarders to public resolvers
Set-DnsServerForwarder -IPAddress "1.1.1.1","8.8.8.8" -UseRootHint $true

If you don’t set forwarders, DNS falls back to root hints, which work but are slower and less predictable for general internet resolution. Most environments prefer explicit forwarders.

For resolving names in another internal domain (a partner company, a separate forest, or a non-AD internal zone), use conditional forwarders so only queries for that namespace go to its DNS servers, while everything else still follows your normal forwarders.

Forwarders vs root hints vs conditional forwarders

Forwarders Send all non-authoritative queries to a chosen upstream resolver. Fast, predictable, recommended.
Root hints Fallback that walks the DNS root servers. Works without config but slower.
Conditional forwarders Route queries for a specific domain to specific DNS servers. Use for partner/forest namespaces.

Verify the configuration

Once it’s set, confirm the DC’s DNS is healthy:

ipconfig /all
dcdiag /test:dns /v

ipconfig /all confirms the client-side server list (partner first, loopback second, no public resolvers). dcdiag /test:dns checks record registration, forwarders, delegation, and dynamic update health across the board. Clean results here prevent a long list of downstream AD problems.

Final DC DNS sanity check

  • No DC lists only itself for DNS
  • Primary DNS on each DC is a partner DC
  • Loopback present as a lower-priority entry
  • Forwarders set; public resolvers only as forwarders, not client DNS
  • AD zones are AD-integrated with secure-only dynamic updates
  • dcdiag /test:dns passes on every DC

Wrapping up

Good DC DNS comes down to a few habits. Point each DC’s primary DNS at a partner and keep loopback as the secondary so you never island a DC at boot. Keep your AD zones AD-integrated with secure-only updates so DNS replicates with the directory and resists tampering. Send external lookups through forwarders rather than stuffing public resolvers into the client settings. Then verify it all with dcdiag /test:dns.

None of this is complicated, but the cost of getting it wrong is high and the symptoms rarely point at DNS directly. Set it correctly once, audit it whenever you inherit a domain, and re-check it any time you add or retire a domain controller.

Frequently asked questions

What DNS server should a domain controller point to?

Point each DC's primary DNS at a partner DC running DNS, and its secondary at its own loopback address (127.0.0.1). With three or more DCs, you can list another partner before loopback too. The key rule is that a DC should not list only itself.

Why shouldn't a domain controller point only to itself for DNS?

It causes islanding. On reboot, the DC's DNS service may not be fully started when AD tries to register and locate records, so it can't find replication partners and becomes isolated. Pointing primary DNS at a partner first avoids the chicken-and-egg startup problem.

Should domain controllers use AD-integrated DNS zones?

Yes, in almost all cases. AD-integrated zones store DNS data in Active Directory, so they replicate with AD, support multi-master updates, and allow secure dynamic updates. They're more resilient than traditional primary/secondary file-based zones.

What should I set as a DNS forwarder on a domain controller?

Set forwarders to a reliable external resolver — your ISP's, or a public resolver like 1.1.1.1 or 8.8.8.8 — so the DC can resolve internet names it isn't authoritative for. Never point a DC's client DNS at a public resolver; use forwarders for external lookups instead.

Is 127.0.0.1 or the DC's real IP better as the loopback DNS entry?

Either works, but the real static IP is often clearer in multi-NIC or troubleshooting scenarios, while 127.0.0.1 is simple and unambiguous. What matters most is that loopback is the secondary entry, not the primary, so the DC resolves a partner first at startup.

How do I check if my DC's DNS is configured correctly?

Run dcdiag /test:dns for a thorough health check, and ipconfig /all to confirm the configured DNS servers. Look for clean A and _msdcs SRV record registration, working forwarders, and no DC pointing solely at itself.

Sources & further reading

Official vendor documentation referenced while writing this guide.

MG

MCSA Guru Team

IT & Systems Administration

We are working IT pros and system administrators who spend our days in Windows Server, Microsoft 365, and the wider Microsoft stack. MCSA Guru is where we write down the fixes and walkthroughs we wish we had found the first time.

MCSA Guru provides independent, educational IT guidance. Microsoft, Windows, Windows Server, Microsoft 365, Exchange, and Microsoft Teams are trademarks of Microsoft Corporation; Docker is a trademark of Docker, Inc. MCSA Guru is not affiliated with or endorsed by Microsoft or Docker. Always test changes in a safe environment before applying them in production.

Related guides

Fixing something right now?

Jump straight into the guide library or search for the exact error or task you are dealing with.