Ver IP real a través del proxy HTTP

Ver IP real a través del proxy HTTP

Estoy configurando un proxy HTTP en una aplicación Java. En esa aplicación pruebo si el proxy está funcionando consultandohttp://api.ipify.org/. Sin embargo, recupero mi dirección IP real en lugar de la del proxy. Verifiqué con Wireshark, mi computadora envía la solicitud http al proxy que luego me devuelve mi dirección IP real. Me preguntaba cómo es eso posible. También me gustaría saber si hay alguna forma de comprobar este comportamiento sin consultar la API. ¡Gracias!

Respuesta1

Como descubrió, se envía un encabezado llamado:X-reenviado-para, que contiene su IP original.

Es posible eliminar ese encabezado de solicitud o personalizarlo; si está intentando eliminarlo, el proxy puede agregarlo sin importar lo que pase y fuera de sus manos. Aquí tienes un artículo interesante que puede ayudarte si aún no lo has visto.Solicitudes HTTP desde Java, agregue información de encabezado y proxy. Otra opción puede ser buscar un proveedor de proxy diferente.

Como método alternativo para verificar si el proxy está funcionando, debería poder usar: InetAddress.isReachable(), puede verificar si hay una respuesta de cualquier sitio web como Google.com o un servidor personalizado que tenga en Internet. A menos que estés intentando verificar la IP del proxy, aún puedes configurar tu propio servidor de verificación, incluso si se trata de un host gratuito. InetAddress.isReachable puede tener algunas desventajas como se menciona aquí:El método "isReachable" no ha sido digno de utilizar para mí en muchos casos.

Este parece ser el más relevante para su pregunta:¿Cómo comprobar si el proxy funciona en Java?También me imagino que estás intentando hacer algo similar, como consultar una lista de proxy, en lugar de utilizar un servicio pago. Depende de si el software es solo para usted o si se lanzará y compartirá. Si eres solo tú, podría valer la pena comprar un proxy que te brinde anonimato.

Respuesta2

Creo que acabo de enterarme de lo que pasó aquí. El proxy parece utilizar el indicador HTTP X-Forwarded-For. Verhttp://en.wikipedia.org/wiki/X-Forwarded-For. Entonces, supongo que la única forma de estar realmente seguro es consultar la API y ver qué se devuelve.

información relacionada