Facebook Pixel
Como Tornar Pública Uma VM ou Computador Sem IP Válido – Port Forwarding no Windows

Como Tornar Pública Uma VM ou Computador Sem IP Válido – Port Forwarding no Windows

Você tem um servidor Windows com IP público conectado à Internet, e precisa expor alguns serviços hospedados em outros dentro da sua rede local ou servidores hospedados em máquinas virtuais dentro do servidor físico. Seja como for estes computadores não possuem IP válido (público), apenas IPs inválidos para se comunicarem entre si.

Caso o seu cenário seja o mapeamento de portas do servidor para dentro das VMs, será necessário primeiro tornar estas VMs acessáveis pela rede local. Para isso, vamos começar montando uma rede local com Virtual Machines dentro do Hyper-V. Caso o seu cenário seja apenas o mapeamento para computadores físicos, pode passar para o próximo tópico.

Para distribuir o acesso à Internet para as estações utilizando a conexão do servidor host é necessário instalar o serviço NAT (Network Address Translation) no servidor.

Para configurar as rotas e fazer o port forwarding, basta utilizar o comando netsh no servidor que possui conexão com ambas as redes. No exemplo abaixo vou fazer o seguinte mapeamento:

  • Todas as chamadas à porta 80 do servidor para a porta 80 do computador na rede local que responde pelo IP 192.168.0.21.
  • Todas as chamadas à porta 81 do servidor para a porta 8080 para o computador na rede local que responde pelo IP 192.168.0.22:
netsh interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=80 connectaddress=192.168.0.21
netsh interface portproxy add v4tov4 listenport=81 listenaddress=0.0.0.0 connectport=8080 connectaddress=192.168.0.22

Para verificar se está tudo certo, utilize o comando:

netsh interface portproxy show all

Exemplo:

PS C:\Users\Administrator> netsh interface portproxy show all

Listen on ipv4:             Connect to ipv4:

Address         Port        Address         Port
--------------- ----------  --------------- ----------
0.0.0.0         8011        192.168.0.22    80
0.0.0.0         1411        192.168.0.22    1433
0.0.0.0         3311        192.168.0.22    3389
0.0.0.0         4411        192.168.0.22    443
0.0.0.0         80          192.168.0.21    80
0.0.0.0         81          192.168.0.22    8080

Para eliminar um mapeamento utilize o comando:

netsh interface portproxy delete v4tov4 listenport= listenaddress=

Exemplo:
netsh interface portproxy delete v4tov4 listenport=80 listenaddress=0.0.0.0

Para fazer modificações, é necessário eliminar o mapeamento e fazer um novo.

Estando feitos os mapeamentos, não esqueça de liberar as portas no Windows Firewall.

Deixe seu comentário