
Estou trabalhando no Windows 8. Estou tentando me conectar a uma nuvem OpenStack hospedada em um servidor remoto, mas que possui um IP público para a API. No entanto, fazer chamadas de API exige chamadas para serviços adicionais dentro da nuvem que ainda possuem os endereços internos da nuvem, e não posso fazer isso. Todos os endereços internos foram configurados para que agora tenham um equivalente público. Então, para cada 10.xx2:yyyyy privado agora eu tenho um 194.xxx:zzzzz
O que preciso fazer é configurar o encaminhamento de porta em minha máquina local, para que cada chamada para 10.xx2:yyyyy do aplicativo que chama a API seja traduzida para o 194.xxx:zzzzz correspondente, que é público.
Eu tentei netsh com
netsh interface portproxy add v4tov4 listenport=yyyy listenaddress=10.x.x.2 connectport=zzzzz connectaddress=194.x.x.x
mas isso não produziu resultados.
Também tentei usar uma ferramenta PassPort que encontrei online, executá-la com privilégios de administrador e fazer a mesma coisa, mas novamente sem sucesso. Primeiro tentei testar o endereço 10.xxx:yyyy em um navegador e depois testei com o aplicativo, mas não funcionou nenhuma vez.
O firewall está desativado.
Alguma ideia?
Atenciosamente.
Responder1
Isso funciona para mim:
netsh interface portproxy add v4tov4 listenport=yyyyy connectaddress=destination.ip connectport=destination.port protocol=tcp
Qualquer conexão com localhost:yyyyy é redirecionada para destination.ip:destination.port mesmo se destination.ip for externo.
Nota: isso torna a regra de encaminhamento permanente.
Responder2
Caso você use as ferramentas CLI, tente incluir esta linha em seu arquivo de credenciais openrc: export OS_INTERFACE=public