Windows Time Service Operations: Trace the Domain Clock Hierarchy
Use W32Time and w32tm to inspect Windows time sources, validate the AD synchronization chain, and correct configuration at the proper tier.
Windows time is a hierarchy, not a collection of independent computers pointed at whichever NTP server responds fastest. In an Active Directory forest, domain members normally follow the domain time hierarchy, while the forest-root domain’s PDC emulator is the boundary that should obtain time from a deliberate authoritative source. A client that synchronizes successfully with the wrong peer can still be disconnected from the intended hierarchy.
This guide focuses on understanding and operating the Windows Time service (W32Time), not on one downstream authentication error. First identify the local machine’s source and configuration, then trace the chain toward the root time source. Only change the tier where the evidence shows a misconfiguration.
Know the hierarchy before configuring peers
Domain-joined workstations and member servers normally use the NT5DS synchronization type and locate time sources through Active Directory. Domain controllers also follow the directory hierarchy, with the forest-root PDC emulator normally acting as the top-level domain source unless the design explicitly assigns that role elsewhere. That root source should synchronize to a stable, approved external NTP service or hardware time source. A time source configured on the wrong domain controller can create an unintended competing root or a loop.
Non-domain computers do not discover the AD hierarchy and require a separately managed source. Virtualized systems add another clock source to consider: the hypervisor integration service or host can influence guest time. Document whether the guest is expected to follow the domain hierarchy, the host, or a supported high-accuracy design; do not enable competing synchronization paths without a reason.
W32Time uses NTP and UDP port 123 for its synchronization traffic. That is a destination-port fact, not proof that a firewall, NAT, DNS, or upstream peer is correctly configured. The service also tracks its selected source dynamically. If the clock is wrong, inspect the source and peer-selection data before restarting the service or replacing policy.
Inspect the active source and configuration
Run these commands on the affected machine first:
w32tm /query /status
w32tm /query /source
w32tm /query /configuration
w32tm /query /peers
/status reports the last successful synchronization details, including the source, stratum, and time since the last sync. /source provides a quick source name, /configuration shows effective settings and whether values came from policy or local configuration, and /peers lists configured peers. Preserve the output before making changes. A client showing Local CMOS Clock or another unexpected source is a clue to investigate, not a sufficient explanation by itself.
On a domain controller, inspect the AD role owner and compare its W32Time configuration with the intended hierarchy. On a member, verify the reported source is an appropriate domain controller and not a manually configured public peer. Use w32tm /monitor from a machine that can query domain controllers to compare their reported status. The time source can be dynamic, so capture the chain for the actual affected machine rather than assuming all members use one fixed server.
For a client that is consistently out of sync, compare its reported source with the nearest domain controller, then compare that controller with its own upstream. A healthy leaf cannot compensate for a root that is free-running, and configuring every workstation with the same public peer can hide a broken AD hierarchy while increasing the number of direct external dependencies. Record each hop, last successful sync, stratum, and offset so the fault is localized to one boundary. If only one subnet fails, compare its UDP/123 path, name resolution, and site-specific domain controller selection with a healthy subnet before making a forest-wide change.
To compare offset against a named peer without changing configuration, use a short strip chart:
w32tm /stripchart /computer:time-peer.example.test /dataonly /samples:10
This is a measurement probe, not a configuration repair or proof of long-term stability. Compare results across multiple sources and times, and account for network delay and path asymmetry before concluding that one clock is authoritative. A one-time low offset does not validate the entire hierarchy.
Correct configuration at the root, not everywhere
For ordinary domain members, the expected default is to discover time through AD. If a member has been manually pointed to a peer, determine whether Group Policy, a configuration-management agent, or a prior script is enforcing that state. Restore the intended hierarchy through the organization’s policy source rather than applying a local override that will drift or be overwritten.
The forest-root PDC emulator is the normal place to configure the approved external source. Confirm role ownership before changing it, identify the approved peer names and fallback strategy, check DNS and UDP/123 reachability, and schedule a controlled change. Microsoft documents w32tm as the preferred tool for configuration and diagnosis. The exact /config flags depend on whether the host should use a manual peer list, domain hierarchy, or another supported mode; do not paste a generic command without understanding the current policy and the scope of its effect.
After a supported configuration change, w32tm /config /update asks the service to reread configuration. A resynchronization request can be issued with w32tm /resync /rediscover, but it does not repair a blocked path, an invalid peer, or conflicting policy. Verify /query /source and /query /status again after convergence, and inspect Windows Time events if the selected source remains unexpected.
Avoid scheduling repeated resynchronization commands as a substitute for fixing the source. A periodic task can hide a policy conflict, add load to domain controllers, and make it harder to distinguish a transient outage from a stable misconfiguration. Use the service’s normal convergence behavior, and alert on a stale last-sync time or unexpected source rather than continuously forcing a correction.
Avoid changing low-level poll intervals and phase-correction registry values as a first response. Those controls affect time convergence and may be policy-managed. High-accuracy requirements are a distinct engineering design with hardware, network, virtualization, and Windows-version constraints. W32Time’s ordinary domain synchronization should not be marketed as a universal precision clock.
Interpret evidence without conflating time and timezone
The system clock represents UTC-based time; the displayed local time also depends on the configured time zone and daylight-saving rules. A correct UTC clock with an incorrect display offset is a time-zone configuration issue, not necessarily an NTP failure. Compare UTC timestamps and time source when correlating logs across hosts. Avoid repeatedly setting the clock manually because it can hide the synchronization fault and create new ordering problems in audit, replication, and application data.
For virtual domain controllers, follow Microsoft’s virtualization guidance for the specific hypervisor and Windows Server generation. A guest restored from a saved state or a host with an independent clock correction can jump relative to domain peers. Test the time path after migration, checkpoint restore, host pause/resume, or changing virtual-machine integration settings; don’t assume that two configured time providers are additive or harmless.
Incident workflow
- Capture Windows build, time zone, domain role, PDC emulator owner, and VM status.
- Run
w32tm /query /status,/source,/configuration, and/peerson the affected host. - Trace the source to the next authoritative tier, continuing to the forest-root PDC where applicable.
- Use
/stripchartto compare candidate peers and inspect DNS, UDP/123, and policy evidence. - Correct only the tier whose source or policy is wrong, using the approved configuration-management path.
- Re-query status after synchronization and monitor Windows Time events across a representative interval.
Reliable time is a control-plane dependency. A deliberate hierarchy limits configuration drift, makes failure domains visible, and helps administrators distinguish an endpoint problem from an upstream source problem. The w32tm commands are most useful as evidence in that model, not as a set of magic reset incantations.
Related:
- Fixing Kerberos Authentication Failures Caused by Clock Skew
- Fixing ‘The Trust Relationship Between This Workstation and the Primary Domain Failed’
Sources: