Eu encontrei uma maneira de realizar o que estávamos procurando. Obrigado por ir @jc__ pela dica com o grubenv e também pelo @Anthon.
Então aqui está a minha solução: Coloque um binário do kernel do iPXE (.lkrn) com o script personalizado para contatar o servidor de controle de inicialização em / boot
Em seguida, configure o Grub
1- para usar variável de grubenv
GRUB_DEFAULT=saved
2- Faça o Chain carregar o iPXE no / boot a partir do Grub e inclua o seguinte comando antes de inicializar o iPXE
set saved_entry='<menuentry to boot from local drive>'
save_env saved_entry
3- Prefira o menu do Grub que carrega o sistema operacional da unidade local com
set saved_entry='<menuentry iPXE>'
save_env saved_entry
4- Se nada precisar ser feito, o servidor de controle de inicialização instrui o iPXE a inicializar a partir da unidade local com
sanboot --no-describe --drive 0x80
5- O Grub é carregado novamente e inicializa na unidade local, configurando a próxima inicialização para ser o iPXE novamente.
O tempo de inicialização no Windows 10, incluindo a solicitação do servidor de controle de inicialização, é de aproximadamente 25 segundos. Então, na verdade, bem rápido. :)