Solução mais simples : Dentro do guest vm, você pode executar este comando:
net time \<hostMachineName> /set
Preencha o nome NetBios da sua máquina host, isso irá definir o relógio da vm do convidado para combinar com o da sua máquina host, via RPC
Ainda melhor , você pode usar o serviço de hora do windows, w32time. Você pode interagir com este serviço através do w32tm.exe, e ele comunica o UDP pela porta 123 (na verdade, eu lembro desse :) assim que o UDP na porta 123 é aberto em seus firewalls.
Para configurá-lo no guest vm:
net stop w32time
w32tm.exe /unregister
w32tm.exe /config /manualpeerlist:<hostMachineName> /syncfromflags:manual
w32tm.exe /config /update
w32tm.exe /resync
w32tm.exe /register
net start w32time
E você pode executar o / resync conforme necessário, por meio do Agendador de Tarefas ou qualquer outra coisa; Mas eu não acho que isso seja necessário, se você registrou como um serviço com esses parâmetros
Da máquina host :
Você pode definir a hora do seu convidado adicionando uma opção /computer:<target>
e executando o comando /resync
dos seus scripts em execução no seu host, com o alvo sendo o nome de computador netbios da vm guest.
Do host, atualize o guest vm:
w32tm.exe /computer:<guestVM> /resync
Veja também: