Наш OpenVPN работает через протокол UDP. Этот протокол не имеет понятие "сессия" (в отличии от TCP), а просто пересылает пакеты на другой адрес без подтверждения об их доставке. В этом есть плюсы и минусы. Среди плюсов - скорость, ведь не нужно дожидаться подтверждения того, что предыдущий пакет доставлен. А один из минусов - из-за потери связи одна из сторон может не узнать, что собеседник "уже не слушает". В нашем случае, туннели сбрасываются в полночь, потому что если их не сбрасывать, то через пару недель на сервере образуется большое число впустую открытых портов UDP, которые ждут чтобы отправить трафик клиенту которого нет. Да и трафика тоже нет.
Теперь насчет самого сброса в 00-00. Эта процедура не мгновенная, а занимает некоторое время, поэтому может так случиться, что ваш клиент попытался подключиться и не смог - так как процесс на сервере еще не готов или не сброшена предыдущая сессия. Из-за этого возможны разные ошибки, но если клиент настроен правильно, то он должен пытаться подключиться вне зависимости от того, что ему скажет сервер. Мало ли что ему сказали - пароль не тот или сервер не доступен или вообще интернет пропал или еще что-то, тем не менее он должен пытаться подключиться.