Maneira correta de permitir a conexão do convidado do Hyper-v a um aplicativo na máquina host

Maneira correta de permitir a conexão do convidado do Hyper-v a um aplicativo na máquina host

Qual é a maneira correta de permitir a conexão do convidado a um aplicativo em execução na máquina host?

Configuração de exemplo:

  • algum aplicativo em execução na minha máquina host Win 10, digamos, aplicativo NodeJS na porta 4400
  • SO convidado no Hyper-v conectado ao switch padrão, por exemplo, Ubuntu 18.04 criado via "Quick Create"

O Firewall do Windows bloqueia conexões de convidado para host:

2019-10-09 10:18:21 DROP TCP 172.17.147.6 172.17.147.1 59560 4400 60 S 3734288315 0 29200 - - - RECEIVE

Isso não é surpresa, pois existe uma regra "Node.js: JavaScript do lado do servidor" que bloqueia o tráfego em redes "Públicas", que é o tipo de rede atribuída ao Switch Padrão, criado pelo Hyper-V.

O que é surpreendente é que funcionou antes. Há alguns meses, funcionava tanto para aplicativos NodeJS quanto para aplicativos Java. Há uma semana tentei a configuração já existente, mas não consegui acessar um aplicativo rodando em 9290. Tentei consertar, redefinindo o Firewall do Windows, mas perdi a capacidade de acessar 4400. Reinicializei/reinstalei o Hyper-V e o NodeJS, esperando que adicione alguma regra mágica de firewall sem sucesso. Ainda não consigo ver uma regra razoável que permita o acesso a aplicativos NodeJS em redes "públicas".

Então, qual poderia ser a mágica que permitiu que convidados acessassem aplicativos host?

informação relacionada