Помогите с синхронизацией времени (разбег в несколько секунд)
Добавлено: 20 мар 2023, 15:36
Есть домашняя система наблюдения.
Состоит из 10 IP-камер "Misecu" и двух "Besder". Итого 12. Платформа у всех XM530_50X20-WG_8M (возможно, слегка отличаются). Все камеры покупались на Ali.
Подключены проводом в локальную сеть (Wi-Fi тоже в них есть, но использовался только при первоначальной настройке).
В качестве регистратора используется ПК с установленной CMS от Polyvision.
И вдруг я озаботился одинаковым временем на всех камерах одновременно.
Казалось бы, что может быть проще? Тем более и служба нужная в конфиге камер есть. Называется "NTP".
Нашёл адреса годных NTP-серверов в сети Интернет. Поставил интервал обновления 1 час. И вроде бы всё заработало.
Но не тут-то было! На следующий день опять обнаружил разбег в несколько секунд.
Теперь кратко о сделанном:
- Менял адреса NTP-серверов (раз 10). Безуспешно.
- Вписывал вместо доменного имени NTP-сервера его IP-адрес. Безуспешно.
- Включал/отключал разные службы на камерах, предположив, что это, возможно, как-то связано. Безуспешно.
- Менял интервал синхронизации как в сторону уменьшения, так и увеличения. Безуспешно.
- Предположил, что это CMS как-то корректирует время самостоятельно. Для проверки отключил на паре камер службу NTP и увёл время на них сильно в сторону. Так я выяснил, что CMS никак не влияет на синхронизацию времени в камерах, потому что время осталось неправильным, как и предполагалось. То есть, проблема всё-таки в реализации службы на самих камерах.
- Тогда я предположил, что, может быть, NTP-сервера из Интернета либо банят меня временно из-за частых обращений либо отвечают невпопад из-за всяких задержек в сети. Штош... Поднял свой NTP-сервер средствами Windows. В той же локальной сети. Не помогло.
- Убрал Windows NTP-сервер. Установил Meinberg NTP (уж сильно его хвалят). Ничего не изменилось.
Что удалось выяснить в итоге:
Если время различается более чем на 10-15 секунд (примерно), то всё отрабатывает, как и ожидается. Время правильно синхронизируется.
Если же разбег на 2-3-5 секунд, то не происходит ровным счётом ничего. Время не синхронизируется.
У меня даже появилось идиотское предположение, что есть какая-то настройка, которая позволяет указать допустимый разбег времени. Но это же нонсенс!
На данный момент утром на камерах всегда разное время. Причём не всех разное, а как бы группами: 3 камеры с одним временем, 4 камеры с одним временем, остальные с третьим.
Разница достигает 5 секунд.
Ещё интересное:
В журнале обнаружил строчку в полночь "SetTime" и время, различающееся со временем лога на 4-5 секунд. Это откуда оно время берёт?
Время самой сети синхронизируется с роутером, если я ничего не путаю. А роутер синхронизируется с тем же сервером, что и локальный NTP. То есть время у них должно совпадать. Пусть даже не идеально, но не на 5 же секунд.
Где я думаю не туда?
Есть у кого-нибудь идеи?
Состоит из 10 IP-камер "Misecu" и двух "Besder". Итого 12. Платформа у всех XM530_50X20-WG_8M (возможно, слегка отличаются). Все камеры покупались на Ali.
Подключены проводом в локальную сеть (Wi-Fi тоже в них есть, но использовался только при первоначальной настройке).
В качестве регистратора используется ПК с установленной CMS от Polyvision.
И вдруг я озаботился одинаковым временем на всех камерах одновременно.
Казалось бы, что может быть проще? Тем более и служба нужная в конфиге камер есть. Называется "NTP".
Нашёл адреса годных NTP-серверов в сети Интернет. Поставил интервал обновления 1 час. И вроде бы всё заработало.
Но не тут-то было! На следующий день опять обнаружил разбег в несколько секунд.
Теперь кратко о сделанном:
- Менял адреса NTP-серверов (раз 10). Безуспешно.
- Вписывал вместо доменного имени NTP-сервера его IP-адрес. Безуспешно.
- Включал/отключал разные службы на камерах, предположив, что это, возможно, как-то связано. Безуспешно.
- Менял интервал синхронизации как в сторону уменьшения, так и увеличения. Безуспешно.
- Предположил, что это CMS как-то корректирует время самостоятельно. Для проверки отключил на паре камер службу NTP и увёл время на них сильно в сторону. Так я выяснил, что CMS никак не влияет на синхронизацию времени в камерах, потому что время осталось неправильным, как и предполагалось. То есть, проблема всё-таки в реализации службы на самих камерах.
- Тогда я предположил, что, может быть, NTP-сервера из Интернета либо банят меня временно из-за частых обращений либо отвечают невпопад из-за всяких задержек в сети. Штош... Поднял свой NTP-сервер средствами Windows. В той же локальной сети. Не помогло.
- Убрал Windows NTP-сервер. Установил Meinberg NTP (уж сильно его хвалят). Ничего не изменилось.
Что удалось выяснить в итоге:
Если время различается более чем на 10-15 секунд (примерно), то всё отрабатывает, как и ожидается. Время правильно синхронизируется.
Если же разбег на 2-3-5 секунд, то не происходит ровным счётом ничего. Время не синхронизируется.
У меня даже появилось идиотское предположение, что есть какая-то настройка, которая позволяет указать допустимый разбег времени. Но это же нонсенс!
На данный момент утром на камерах всегда разное время. Причём не всех разное, а как бы группами: 3 камеры с одним временем, 4 камеры с одним временем, остальные с третьим.
Разница достигает 5 секунд.
Ещё интересное:
В журнале обнаружил строчку в полночь "SetTime" и время, различающееся со временем лога на 4-5 секунд. Это откуда оно время берёт?
Время самой сети синхронизируется с роутером, если я ничего не путаю. А роутер синхронизируется с тем же сервером, что и локальный NTP. То есть время у них должно совпадать. Пусть даже не идеально, но не на 5 же секунд.
Где я думаю не туда?
Есть у кого-нибудь идеи?