Active Directory · Troubleshooting

There Are Currently No Logon Servers Available to Service the Logon Request

This error means the machine could not reach a single domain controller to authenticate — almost always DNS, network path, a stopped service, or a broken secure channel — and the fix is to walk the DC-locator chain until you find the broken link.

Quick idea: To log you in, a machine has to find a domain controller, reach it over the network, and prove its own identity to it. This error is what you see when any of those three steps fails. The skill is not guessing which one — it is running the DC-locator process by hand and watching where it stops.
DC Locator

The Netlogon process that finds a suitable DC by querying DNS for service (SRV) records.

SRV records

_ldap._tcp.dc._msdcs.<domain> and friends — the DNS entries that advertise where the DCs are.

Netlogon

The service that builds and maintains the authenticated channel to a DC. If it is stopped, nothing authenticates.

Introduction

Someone cannot log in. The screen says there are no logon servers available, and depending on the machine you might also see it when a scheduled task runs, when gpupdate is invoked, or when someone tries to map a drive. Other users on other machines are fine. The domain is up. Yet this one endpoint behaves as though Active Directory does not exist.

The message is literal: the machine asked for a domain controller and got none it could use. That can happen because it could not find one, could not reach the one it found, or found and reached one but could not authenticate to it. Each of those is a different fix, and the diagnostic path below separates them in a couple of minutes.

What You’re Seeing

The exact wording shows up across several operations, which is a useful clue in itself — it is a domain-reachability problem, not an application one:

There are currently no logon servers available
to service the logon request.

# The same underlying failure from the command line
C:\> gpupdate /force
Computer policy could not be updated successfully.
There are currently no logon servers available...

# DC discovery run by hand also comes back empty
C:\> nltest /dsgetdc:corp.example.com
Getting DC name failed: Status = 1355 0x54b
ERROR_NO_SUCH_DOMAIN
Key difference: If nltest /dsgetdc fails outright, the machine cannot even locate a DC — a discovery problem (DNS or network). If it succeeds but logon still fails, the machine found a DC but cannot authenticate to it — a secure-channel or time problem. Which of the two you see decides everything that follows.

What It Actually Means

When a machine needs a DC, Netlogon runs the DC Locator. It asks DNS for the service records that advertise domain controllers — records like _ldap._tcp.dc._msdcs.corp.example.com — picks a candidate, and opens a connection. If DNS on the client points at the wrong server (a home router, a public resolver, an ISP address), those records cannot be found and discovery dies immediately. If DNS is correct but a firewall or routing problem blocks the DC’s ports, discovery finds a DC it cannot reach.

Even when discovery and connectivity are perfect, logon can still fail at the last step: the machine has to prove its identity using its own account password, and if that secure channel is broken — the same fault behind the trust relationship failed error — or the clocks are more than five minutes apart, Kerberos refuses and you get the same message. So this one error spans the whole chain from name resolution to authentication.

Step 1: Run DC Discovery by Hand

Start where the machine starts. nltest /dsgetdc exercises the exact locator process the logon used, and tells you whether a DC can be found and which one.

# Find a DC for the domain - forces discovery instead of using the cache
nltest /dsgetdc:corp.example.com /force

# List every DC the client knows for the domain
nltest /dclist:corp.example.com

# From PowerShell, the same discovery with more detail
Get-ADDomainController -Discover -Domain corp.example.com

# Is the secure channel itself healthy? (only meaningful if a DC is found)
nltest /sc_query:corp.example.com
What to look for: Success here, with a DC name returned, means discovery and connectivity are fine — jump to the secure-channel and time checks. Failure with ERROR_NO_SUCH_DOMAIN or a timeout means the machine cannot resolve or reach a DC — go straight to DNS.

Step 2: Check DNS and the SRV Records

DC location is a DNS problem more often than anything else. The client must be pointed at an internal DNS server that hosts the AD zone, and the domain’s service records must resolve.

# What DNS server is the client actually using? It must be internal.
ipconfig /all

# Can the domain's DC locator records be resolved?
nslookup -type=SRV _ldap._tcp.dc._msdcs.corp.example.com

# Resolve the domain to its DCs
nslookup corp.example.com

# Flush a stale cache and re-register, then retry discovery
ipconfig /flushdns
ipconfig /registerdns
Important: The single most common root cause is a client pointed at the wrong DNS server — a public resolver like 8.8.8.8, or an ISP address handed out by DHCP. AD member machines must resolve against internal DNS only. If ipconfig /all shows an external DNS server, that is your bug.

Step 3: Services, Ports, and Time

If a DC resolves and answers ping but logon still fails, look at the machine’s own services, the network path to the DC’s ports, and the clock.

# These must be running on the client for domain logon to work
Get-Service Netlogon, Dnscache, W32Time | Select-Object Name, Status

# Can the client reach the core DC ports? (DNS 53, Kerberos 88, LDAP 389, SMB 445)
Test-NetConnection DC01.corp.example.com -Port 88
Test-NetConnection DC01.corp.example.com -Port 389

# Kerberos fails if the clock is more than 5 minutes off the DC
w32tm /resync
w32tm /query /status
Troubleshooting note: On a domain controller itself, this error at boot is usually a chicken-and-egg problem — Netlogon needs SYSVOL and the directory available before it can service logons. On a member machine, it is almost always DNS, connectivity, or the secure channel.

Common Causes

Work down the list. The first three account for the large majority of cases.

Cause How to Confirm Fix
Wrong DNS server on the client ipconfig /all shows a public or ISP DNS address, not an internal one. Point the NIC (or DHCP scope) at internal DNS servers only; ipconfig /flushdns.
Missing or stale SRV records nslookup -type=SRV _ldap._tcp.dc._msdcs.<domain> returns nothing. On the DC, restart Netlogon to re-register; verify the DNS zone holds the records.
Firewall blocking DC ports DC resolves and pings, but Test-NetConnection to 88/389/445 fails. Open the required AD ports between the client subnet and the DCs.
Broken secure channel A DC is found, but nltest /sc_query returns access denied. Repair it: Test-ComputerSecureChannel -Repair.
Time skew beyond five minutes w32tm /query /status shows large offset; Kerberos rejects tickets. w32tm /resync; fix the machine’s time source.
Netlogon / DNS Client service stopped Get-Service Netlogon, Dnscache shows Stopped. Start the services and set them to Automatic; investigate why they stopped.
VPN not connected before logon Remote machine has no path to a DC until the tunnel is up. Use cached credentials, or a pre-logon / always-on VPN.
All DCs genuinely down or unreachable Every DC fails discovery from multiple clients, not just one. This is a DC or site outage, not a client fault — escalate to the DCs.

Working Through a Fix

Split the problem with one command. Run nltest /dsgetdc:<domain> /force. If it fails, you are in the discovery half: check ipconfig /all for the DNS server, confirm the SRV records resolve, and verify the path to the DC’s ports. Correcting the client’s DNS resolves the majority of these outright.

If discovery succeeds but logon still fails, you are in the authentication half: check the secure channel with nltest /sc_query and repair it if needed, and confirm the clock is within five minutes of the DC. When every client on a subnet fails at once, stop looking at clients — a DC, a site link, or a firewall change is the real event, and the fix belongs there.

Production note: Resist “fixing” one laptop by hard-coding a DC’s IP as its DNS server. It papers over the call and breaks the moment that DC is rebooted or retired. Point clients at the correct internal DNS service and let the locator do its job.

How to Prevent It

The durable fixes are unglamorous. Hand out internal DNS servers through DHCP and never external ones, so no client can drift onto a public resolver. Keep the AD DNS zones healthy and the DC locator records registered — monitoring SRV-record presence catches a whole class of these before a user does. Keep DC ports open consistently across sites, and keep time synchronised from the PDC emulator down, because skew produces this same message with no DNS fault in sight.

For remote and roaming machines, plan for the gap between boot and network: cached credentials and pre-logon VPN keep users working when no DC is reachable yet. The deeper the DNS and locator foundations, the rarer this call becomes — both are covered in the DNS post.

Quick Reference

Command Use
nltest /dsgetdc:domain /forceRun DC discovery by hand — the single best splitter of the problem.
nltest /dclist:domainList the DCs the client knows for the domain.
ipconfig /allConfirm the client uses internal DNS, not a public resolver.
nslookup -type=SRV _ldap._tcp.dc._msdcs.domainProve the DC locator records resolve.
nltest /sc_query:domainCheck the secure channel when a DC is found but logon fails.
Test-NetConnection DC -Port 88Verify the path to Kerberos / LDAP / SMB ports.
w32tm /resyncRule out time skew rejecting Kerberos.

Final Thoughts

“No logon servers available” sounds like the domain vanished, but it is a reachability statement about one machine at one moment. Find a DC, reach it, prove yourself to it — the error lives at whichever of those three the machine could not complete. Run the locator by hand and the failing step names itself.

Once you split discovery from authentication with a single nltest, the same call that used to end in a reflexive rejoin or reboot resolves to a specific, explainable cause — usually a client looking at the wrong DNS server.

Key takeaway: Run nltest /dsgetdc:<domain> /force first. Failure means a discovery problem — check ipconfig /all for the DNS server and confirm the SRV records resolve. Success means an authentication problem — check the secure channel and the clock. One command tells you which half to fix.
More troubleshooting

Next: when the domain controllers themselves stop exchanging changes — AD replication error 1722, “The RPC server is unavailable” — the fault that quietly produces stale SRV records and mismatched passwords across a site in the first place.