Acesso a convidado do Hyper-V via nome de máquina não funciona
O Hyper-V tem um recurso interessante no comutador "Default Switch" que
automaticamente adiciona um registro DNS no hospedeiro com o nome de máquina
do convidado quando este obtém IPv4 via DHCP. É salvo em
%SystemRoot%\System32\drivers\etc\hosts.ics
e usa o domínio
mshome.net
.
Meu convidado Fedora 40 não estava aparecendo lá. NetworkManager envia o nome de máquina na requisição DHCP:
$ nmcli connection show eth0 | grep hostname ipv4.dhcp-send-hostname: sim [...]
Descrição da propriedade no manual nm-settings
:
If TRUE, a hostname is sent to the DHCP server when acquiring a lease. Some DHCP servers use this hostname to update DNS databases, essentially providing a static hostname for the computer. If the "dhcp-hostname" property is NULL and this property is TRUE, the current persistent hostname of the computer is sent.
Depois de quebrar um pouco a cabeça, lembrei que a instalação do Fedora por
padrão não configura um nome de máquina estático (no arquivo
/etc/hostname
), que é persistente. O nome transiente
fedora
é gerado a cada inicialização.
$ hostnamectl Static hostname: (unset) Transient hostname: fedora [...]
Então basta configurar um rodando
hostnamectl hostname fedora
(como root) que o dito cujo aparece
em hosts.ics
após reiniciar o convidado:
[...] 172.29.90.28 fedora.mshome.net # 2024 5 3 29 19 40 30 955
Sendo possível conectar, no hospedeiro, com
ssh marcos@fedora.mshome.net
ou algo que o valha.
Excelente dica, não só para o caso ilustrado, mas para quem quer colocar um Linux na rede e deixar ele acessível com mais facilidade.
ResponderExcluirO domínio gerado funciona apenas no hospedeiro. Para expor o convidado na rede local, precisa personalizar a configuração de rede -- "Default Switch" não serve para isso.
ExcluirObrigado pela correção e esclarecimento!
Excluir