Durante a inicialização, o kernel do Linux normalmente recupera a hora do sistema de um chip RTC on-board. Isso ocorreria antes que os serviços / daemons de rede, como o NTP, estivessem funcionando. Quando o NTP tenta se conectar a um servidor e falha, a hora do sistema simplesmente não é alterada. Portanto, não há "método heurístico". Algumas arquiteturas ou plataformas podem variar esse esquema; por exemplo. Eu modifiquei o U-Boot para tentar conectar-me ao servidor SNTP para atualizar o RTC antes que o kernel do Linux ARM seja carregado.
Verifique o log do sistema (o comando 'dmesg') para as configurações do relógio do sistema.