Respuesta rápida
¿Cómo compruebo si un proxy es estático?
Para comprobar si un proxy es estático, solicita api.ipify.org e ipinfo.io/json a través de él una vez por hora durante al menos 24 horas. Después compara la IP de salida, el ASN (el campo org) y el país en todas las comprobaciones correctas. Una IP y un ASN en cada fila significan que el proxy se mantuvo estático durante ese periodo. Las IP estáticas de SteadyProxy están pensadas para mantenerse fijas durante cada alquiler de 30 días; esta prueba te permite verificarlo tú mismo. Actualizado el 19 de octubre de 2026.
¿Cuáles son los datos clave de la prueba?
| Endpoints de prueba | api.ipify.org (solo IP de salida) e ipinfo.io/json (IP, org/ASN, ciudad, región, país) |
|---|---|
| Periodo sugerido | 24 horas, una comprobación por hora (24 comprobaciones); repite el día 7 para tareas de larga duración |
| Resultado estático | La misma IP y el mismo ASN en todas las comprobaciones correctas |
| Resultado rotativo | Dos o más IP distintas, o un cambio de ASN |
| Solicitud fallida | Un timeout no es un cambio de IP: compara solo las filas correctas |
| Cambios de ciudad | Pueden ocurrir cuando se actualiza una base de datos; la IP y el ASN son las señales más fiables |
| Probado | Ambos scripts se ejecutaron el 19 de octubre de 2026 a través de un proxy de prueba protegido con contraseña |
¿Qué debe mantenerse exactamente igual en un proxy estático?
Tres valores no deben cambiar: la IP de salida, el ASN y el país. La IP de salida es la dirección que ven los sitios web; api.ipify.org devuelve solo eso. El ASN es la red que anuncia la IP; ipinfo.io lo muestra en el campo org, por ejemplo AS9009 seguido de un nombre de red. El país proviene de una base de datos de IP. La ciudad y la región pueden cambiar cuando se actualiza esa base de datos, aunque la IP siga siendo la misma. Ten en cuenta que el host al que te conectas no siempre es la IP de salida: lee siempre la IP de salida a través del proxy.
¿Cómo compruebo un proxy con curl?
Ejecuta primero una comprobación para ver los campos y luego el bucle. Sustituye USERNAME, PASSWORD, host y port por los cuatro valores que se muestran para tu IP en el panel. El bucle escribe una línea por comprobación en ip-log.txt y espera 3.600 segundos entre comprobaciones. Los dos últimos comandos cuentan las IP y las redes distintas: una línea de cada uno significa que el proxy se mantuvo estático durante la prueba.
# One check through the proxy: IP, network (org = ASN + name), country, city
curl -s -m 30 -x "http://USERNAME:[email protected]:7777" https://ipinfo.io/json
# 24 checks, one per hour, one line per check in ip-log.txt
PROXY="http://USERNAME:[email protected]:7777"
for i in $(seq 1 24); do
printf '%s ' "$(date -u +%Y-%m-%dT%H:%M:%SZ)" >> ip-log.txt
curl -s -m 30 -x "$PROXY" https://ipinfo.io/json | tr -d '\n' >> ip-log.txt
echo >> ip-log.txt
sleep 3600
done
# Count the distinct exit IPs and networks in the log (one line each = static)
grep -o '"ip": *"[^"]*"' ip-log.txt | sort | uniq -c
grep -o '"org": *"[^"]*"' ip-log.txt | sort | uniq -c
¿Cómo compruebo un proxy con Python?
El script de Python hace la misma prueba y escribe un archivo CSV que puedes abrir en una hoja de cálculo. Lee los datos del proxy de variables de entorno (PROXY_HOST, PROXY_PORT, PROXY_USER, PROXY_PASS) y dos ajustes: CHECKS (por defecto 24) e INTERVAL_SECONDS (por defecto 3600). Consulta ambos endpoints en cada ronda, así también puedes detectar una discrepancia entre ellos. Al final imprime las IP, las redes y los países distintos, y un resultado en una línea. Lo ejecutamos el 19 de octubre de 2026 con Python 3.14 y Requests 2.34, a través de un proxy de prueba local que requiere nombre de usuario y contraseña.
"""Log the exit IP, network and location of one proxy over time.
A static IP shows the same IP, network (ASN) and country in every row.
Install: python -m pip install requests
"""
import csv
import os
import time
from datetime import datetime, timezone
from urllib.parse import quote
import requests
HOST = os.environ.get("PROXY_HOST", "gw.steadyproxy.com")
PORT = os.environ.get("PROXY_PORT", "7777")
USER = os.environ.get("PROXY_USER", "USERNAME")
PASSWORD = os.environ.get("PROXY_PASS", "PASSWORD")
CHECKS = int(os.environ.get("CHECKS", "24"))
INTERVAL = int(os.environ.get("INTERVAL_SECONDS", "3600"))
LOG_FILE = os.environ.get("LOG_FILE", "static-ip-log.csv")
PROXY = "http://" + quote(USER, safe="") + ":" + quote(PASSWORD, safe="") + "@" + HOST + ":" + PORT
PROXIES = {"http": PROXY, "https": PROXY}
FIELDS = ["time_utc", "ipify_ip", "ipinfo_ip", "org", "country", "region", "city"]
def check_once(session):
ipify = session.get("https://api.ipify.org?format=json", proxies=PROXIES, timeout=(10, 30))
ipify.raise_for_status()
info = session.get("https://ipinfo.io/json", proxies=PROXIES, timeout=(10, 30))
info.raise_for_status()
data = info.json()
return {
"time_utc": datetime.now(timezone.utc).isoformat(timespec="seconds"),
"ipify_ip": ipify.json()["ip"],
"ipinfo_ip": data.get("ip", ""),
"org": data.get("org", ""),
"country": data.get("country", ""),
"region": data.get("region", ""),
"city": data.get("city", ""),
}
def main():
rows = []
with requests.Session() as session, open(LOG_FILE, "a", newline="", encoding="utf-8") as fh:
session.trust_env = False
writer = csv.DictWriter(fh, fieldnames=FIELDS)
if fh.tell() == 0:
writer.writeheader()
for n in range(CHECKS):
try:
row = check_once(session)
except requests.RequestException as exc:
print("check", n + 1, "failed:", type(exc).__name__)
else:
writer.writerow(row)
fh.flush()
rows.append(row)
print(row["time_utc"], row["ipify_ip"], row["org"], row["country"], row["city"])
if n + 1 < CHECKS:
time.sleep(INTERVAL)
ips = {r["ipify_ip"] for r in rows} | {r["ipinfo_ip"] for r in rows}
orgs = {r["org"] for r in rows}
countries = {r["country"] for r in rows}
print("successful checks:", len(rows), "of", CHECKS)
print("distinct IPs:", sorted(ips))
print("distinct networks:", sorted(orgs))
print("distinct countries:", sorted(countries))
if len(rows) >= 2 and len(ips) == 1 and len(orgs) == 1 and len(countries) == 1:
print("RESULT: same IP, network and country in every successful check")
else:
print("RESULT: not stable, or not enough data - read the log")
if __name__ == "__main__":
main()
¿Cuánto tiempo debe durar la prueba?
Ejecútala durante al menos 24 horas. Muchas ofertas rotativas cambian la IP por solicitud, por sesión o tras un número determinado de minutos, así que unas pocas comprobaciones en un minuto pueden no detectar un cambio. Para una tarea que se ejecuta cada semana, repite la prueba después de 7 días. Una comprobación por hora es suficiente y se mantiene muy por debajo de los límites de uso de los servicios de consulta gratuitos. Usa un intervalo más corto solo para una prueba breve, como 12 comprobaciones con 5 minutos de diferencia.
¿Y si la IP cambia durante la prueba?
Primero descarta un error de configuración. Comprueba que cada solicitud usó el mismo host, puerto y nombre de usuario: dos IP distintas suelen venir de dos líneas de credenciales distintas. Después comprueba si un proxy del sistema o una VPN de tu máquina se hizo cargo de algunas solicitudes; el script de Python ignora esos ajustes con trust_env = False. Si la IP de salida de una línea de credenciales de SteadyProxy realmente cambia durante su alquiler, envía tu registro al soporte. Nuestra norma de sustitución: Si una IP no funciona, escribe a soporte: la reparamos o la sustituimos por otra IP del mismo país cuando haya stock.
¿Por qué puede cambiar la ubicación mientras la IP sigue igual?
Porque la ubicación es una estimación de una base de datos, no una propiedad de la IP. Los proveedores de geolocalización actualizan sus datos, y una IP estática puede pasar de una ciudad a otra cercana entre actualizaciones. Los datos de registro no son una guía mejor: la documentación de RIPE indica que su atributo de país no puede usarse de forma fiable para asignar IP a países. Trata un cambio de ciudad como un evento de base de datos y un cambio de IP o de ASN como un cambio real. Nuestra guía ¿los proxies residenciales estáticos son realmente residenciales? explica cómo interpretar estos registros.
¿Qué más pregunta la gente sobre probar proxies estáticos?
¿Cuántas comprobaciones demuestran que un proxy es estático?
Ningún número lo demuestra para el futuro; una prueba solo describe el periodo que mediste. En la práctica, 24 comprobaciones por hora con una IP y un ASN muestran que el proxy no rotó durante un día. Repite la prueba después de una semana y guarda los registros. En SteadyProxy, cada IP está pensada para mantenerse fija durante su alquiler de 30 días.
¿Por qué usar tanto api.ipify.org como ipinfo.io?
api.ipify.org devuelve solo la IP, lo que lo convierte en una referencia limpia. ipinfo.io añade el ASN y la organización, la ciudad, la región y el país. Si los dos servicios llegaran a informar de IP distintas en la misma ronda, puede que tu cliente esté abriendo varias conexiones por rutas diferentes. Merece la pena comprobarlo antes de fiarte de cualquier resultado.
¿Puede una sesión sticky parecer estática en una prueba corta?
Sí. Un proxy residencial rotativo con una sesión sticky mantiene una IP durante un tiempo determinado, a menudo minutos, y luego cambia. Una prueba de unos pocos minutos parecería estática. Por eso esta guía pide comprobaciones durante al menos 24 horas. Una IP estática real mantiene la misma IP y el mismo ASN a lo largo de varios días.
¿Una solicitud fallida significa que la IP cambió?
No. Un timeout o un error de proxy solo significa que una solicitud no se completó. Los scripts omiten las rondas fallidas y comparan solo las filas exitosas. Muchos fallos seguidos merecen una revisión: comprueba las credenciales, el puerto y tu propia conexión, luego contacta con soporte si el problema persiste.
¿Está bien enviar estas comprobaciones a ipinfo.io sin un token?
Para un uso ligero, sí: una solicitud por hora es un tráfico muy ligero. ipinfo.io responde a solicitudes básicas sin token, como mostró nuestra prueba del 19 de octubre de 2026, y ofrece tokens para volúmenes mayores. Si pruebas muchas IP a la vez, crea un token gratuito y añádelo a la solicitud, o usa solo api.ipify.org.
¿Debo probar la IP de salida o el host en mi panel?
La IP de salida. El host al que te conectas puede ser un nombre o una dirección que difiere de la IP que ven los sitios web. Ejecuta la comprobación a través del proxy y usa la IP que devuelve api.ipify.org. Esa IP de salida es también la que debes añadir a una allowlist o consultar en WHOIS.
¿Puedo ejecutar la prueba en una IP de SteadyProxy antes de depender de ella?
Sí, y lo recomendamos. Pide una IP en 2,24 US$ por 30 días, ejecuta el script de Python durante un día y lee el log. Según nuestra política de reembolso, una IP que no funciona en las primeras 24 horas tras la entrega, y que no podamos arreglar o sustituir, se reembolsa íntegramente a tu saldo.
¿Qué fuentes usa esta guía? (5)
- API de ipify — ipify (2026-10-19)
- Documentación para desarrolladores de IPinfo — IPinfo (2026-10-19)
- Uso avanzado de requests: proxies y timeouts — Requests (2026-10-19)
- página man de curl — curl (2026-10-19)
- Documentación de la base de datos RIPE: atributo country — RIPE NCC (2026-10-19)