Синхронизация времени в Windows
По умолчанию Windows умеет синхронизировать время компьютера с точными часами через интернет. Если компьютеры локальной сети объеденные в домен, то точное время берется с домен-контроллера, а домен-контроллер берет точное время из интернета.
Проблема синхронизации времени на компьютерах локальной сети возникают тогда, когда интернета нет совсем или он отключен по идейным соображениям. В последнем случае можно разрешить на роутере/фаерволе прохождение протокола NTP (порт 123 UDP) для всех устройств локальной сети.
В худшем случае можно заставить все компьютеры локальной сети синхронизировать время с каким-то одним компьютером, назовем его локальным сервером точного времени.
Настройка локального сервера точного времени
Локальным сервером точного времени может быть абсолютно любой комп с Windows, нужно лишь немного подшаманить в реестре. Открываем редактор реестра (regedit), идем по пути HKLM\System\CurrentControlSet\services\W32Time\TimeProviders\NtpServer и выставляем значение параметра Enabled равным 1.
Открываем командную строку и перезапускаем службу Windows командой
net stop w32time && net start w32time
Если лень возиться с командной строкой, то можно просто перезагрузить комп.
Наш сервер готов.
Откуда вы будете брать время для сервера — это уже ваше дело: хоть через интернет, хоть руками подводите.
Настройка синхронизации времени на компьютерах
Чтобы просто взять и синхронизировать время с сервером точного времени нужно всего-то в командной строке набрать:
net time \\имя_компа_сервера_точного_времени /set
Проще некуда. Если уж совсем лень читать дальше, то можно засунуть эту строку в cmd файл и в автозагрузку запихать. А пока я дальше расскажу, как сделать всё красиво.
Во-первых определим, какой IP-адрес у нашего сервера точного времени. Для примера пусть будет 192.168.1.1
Открываем командную строку и пишем там следующее:
w32tm /config /syncfromflags:manual /manualpeerlist:192.168.1.1
Здесь мы указываем сервера точного времени нашей локальной сети. Их может быть несколько, тогда все перечисляем через запятую без пробела.
Затем, даем команду