With computers, usually the simplest answers are the hardest to find. For example, for the past several months, my home's domain time has been off by a couple hours. The task of fixing it was put on the back burner because I didn't know the simple answer to it and when I finally got around to trying, I simply couldn't find the answer. 

As with most things in a computer, it came down to a stupid checkbox being checked. 


Problem: A Hyper-V Domain Controller had the wrong time and kept resyncing to the wrong time
 

 

Solution: From Hyper-V manager, navigate to the domain controller VM, right mouse and choose 'settings'. Got to "Integration Services" and  uncheck "Time synchronization"

Log into the primary domain controller and sync it with an NTP server. I used a server out on the internet and here are the commands:

 

w32tm /config /manualpeerlist:“0.pool.ntp.org,0x1” /syncfromflags:MANUAL /reliable:yes 
w32tm /config /update 
w32tm /resync 
w32tm /resync /rediscover

 

Your time should now be correct on the DC:


If you get a message that says "The computer did not resync because no time data was available", it's either because the NTP server was unreachable OR your command prompt doesn't know what to do with quotation marks. If the later, run REGEDIT and navigate to :

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesW32TimeParametersNtpServer

If the server has quotes around it, welp, there's your problem. Double click it to edit and remove the quotes.
 

 

 

 

 

Try to resync again, should work, and for your workstations, if you don't want to wait for them to update automatically, you can force it by running CMD as an admin and do the resync command:


I know the formatting on this page is horrible, but it's nearly 2AM and I forgot how to HTML good :-P Hope this helped!

w32tm /resync