Estou executando o Windows Server 2008 R2, temos um aplicativo que se conecta de (vincula a) um IP público no servidor a 127.0.0.1:8334 [se conecta a um serviço que escuta em 0.0.0.0:8334]
No Windows 2003, não havia nenhum problema com isso. Podemos nos conectar usando o TCP de 1.2.3.4 [por exemplo] a 127.0.0.1:8334.
No Windows 2008, descobrimos que as conexões TCP do IP público, por exemplo, 1.2.3.4 a 127.0.0.1:8334, até falham. mas o serviço aceita conexões de 127.0.0.1 a 127.0.0.1:8334 e 127.0.0.1 a 1.2.3.4:8334.
Tentei desligar o firewall do Windows, configurar seu registro, etc. (nenhuma entrada de log útil apareceu), sem sucesso. Isso é um problema com a nova pilha de rede?
Editar% s
1.2.3.4 está tentando conectar-se ao host local [127.0.0.1] na mesma máquina
O arquivo hosts é o arquivo host padrão do Windows 2008.
Informação de verificação de loopback, interessante. Tentei ... não funcionou. Verificado para verificar se eu tinha feito tudo corretamente - eu tenho.
Estou querendo saber se existe uma solução usando NAT ou alguma outra maneira de encaminhar portas - se eu encaminhar 127.0.0.1:port para 1.2.3.4:port, isso funcionaria? Como o aplicativo escuta em 0.0.0.0:port, ele seleciona conexões em 1.2.3.4:port
O arquivo HOSTS contém o host local 127.0.0.1 - no entanto, o arquivo hosts é usado apenas em pesquisas de nome de host. Nesse caso, nosso aplicativo não procuraria nenhum nome de host, pois o endereço IP 127.0.0.1 é codificado nele (em vez de localhost). Portanto, o arquivo HOSTS não entra em jogo aqui.
Quanto às portas acima de 1024 [acho que você se refere ao problema MaxUserPort, talvez?] Eu testei isso tentando uma conexão simples à porta 445 - funciona a partir de 127.0.0.1, não funciona quando eu conecto do IP de origem 1.2.3.4. 445 é um serviço padrão do Windows, portanto, deve funcionar!
Atualmente não executando o NAT ou o RRAS na máquina ... estava pensando se havia uma maneira de fazer o redirecionamento - acho que não funcionará, pois a pilha TCP / IP rejeitará o pacote antes que ele atinja a interface de loopback para redirecionar.
Impressão de rota que eu verifiquei - parece bom, os IPs públicos roteados primeiro e, finalmente, 127.0.0.0 máscara de rede 255.255.255.0 e 127.0.0.1 máscara de rede 255.255.255.255 para loopback.
Editar Parece que encontrei a resposta sobre o motivo do problema. Eu usei eventvwr.msc, habilitei o log do Winsock, desliguei outros serviços, apenas tentei este teste de conexão. Ocorreu um erro que, em hexadecimal, foi mapeado para STATUS_INVALID_ADDRESS_COMPONENT quando eu o pesquisei no Google.
Isso me levou a: http://social.msdn.microsoft.com/Forums/en-US/wfp/thread/d7cb6138-3f67-4467-a068-8325f56739ba
O que confirmou que essa é uma alteração de design no WFP para Vista / 7 / Server 2008 [plataforma de filtragem do Windows].
[Ver resposta de Anupama Vasanth]
Parece que terei que seguir o caminho difícil e reescrever o código [difícil porque significa lidar com gerentes!]
Obrigado por me ajudar a localizar / confirmar o problema!