Veja o IP real através do Proxy HTTP

0

Estou definindo um proxy HTTP em um aplicativo Java. Nesse aplicativo, testo se o proxy está funcionando consultando o link . No entanto, recebo meu endereço IP real em vez do endereço proxy. Eu verifiquei com o Wireshark, meu computador envia o pedido de http para o proxy que, em seguida, retorna o meu endereço IP real para mim. Eu queria saber como isso é possível. Eu também gostaria de saber se há uma maneira de verificar esse comportamento sem consultar a API. Obrigada!

    
por Zackline 14.05.2015 / 18:51

2 respostas

0

Como você descobriu, há um cabeçalho sendo enviado: X-Forwarded-For , que contém seu IP original.

Pode ser possível remover o cabeçalho da solicitação ou personalizá-lo. Se você estiver tentando removê-lo, ele poderá ser anexado pelo proxy, não importa se esteja fora de suas mãos. Aqui está um artigo interessante que pode ajudar se você ainda não viu. Solicitações HTTP de Java, adicione informações de cabeçalho e proxy . Outra opção pode ser procurar um provedor de proxy diferente.

Para um método alternativo para verificar se o proxy está funcionando, você deve poder usar: InetAddress.isReachable (), você pode procurar uma resposta de qualquer site, como o Google.com, ou um servidor personalizado que você tem em a Internet. A menos que você esteja tentando verificar o IP do proxy, ainda é possível configurar seu próprio servidor de verificação, mesmo que seja um host gratuito. InetAddress.isReachable pode ter algumas quedas conforme mencionado aqui: O método" isReachable "não tem valido a pena usar para mim em muitos casos.

Isso parece ser o mais relevante para sua pergunta: Como verificar se o proxy está funcionando em Java? Também imagino que você esteja tentando fazer algo semelhante, como verificar uma lista de proxy, em vez de usar um serviço pago. Depende se o software é apenas para você ou se será lançado e compartilhado. Se é só você, pode valer a pena comprar um proxy que lhe dê anonimato.

    
por 14.05.2015 / 19:56
0

Acho que acabei de descobrir o que aconteceu aqui. O proxy parece usar o sinalizador HTTP X-Forwarded-For. Consulte o link . Então eu acho que a única maneira de realmente ter certeza é consultar a API e ver o que é retornado.

    
por 14.05.2015 / 19:09