2 puntos por GN⁺ 2026-02-02 | 1 comentarios | Compartir por WhatsApp
  • CLI que permite estimar una dirección IP a nivel de país, estado/provincia y ciudad usando la latencia
  • Usa más de 3000 probes de la red Globalping para realizar mediciones de ping y traceroute para cada IP
  • Compara la latencia por etapas, de continente → país → estado/provincia → ciudad, y considera como ubicación real la región con el valor más bajo
  • En las pruebas, mostró una precisión consistente con los resultados de ipinfo en lugares como Polonia, Florida y Miami
  • Es una herramienta CLI de código abierto que cualquiera puede ejecutar y demuestra la utilidad práctica de la validación de ubicación IP basada en latencia

Resumen de la estimación de ubicación IP basada en latencia

  • Se creó una herramienta CLI capaz de interpretar una dirección IP a nivel de país, estado de EE. UU. y ciudad
  • Toma como referencia un caso en el que ipinfo demostró que proveedores de VPN registraban datos de ubicación falsos
    • ipinfo construyó una gran red de probes para rastrear y hacer pruebas de ping a todas las IP y así verificar su ubicación física real
  • Este enfoque permite excluir errores de datos públicos y lograr una determinación de ubicación más confiable basada en latencia y datos de hops

Uso de la red Globalping

  • Globalping es un proyecto comunitario de código abierto que permite autoalojar probes en contenedores
    • Actualmente hay más de 3000 probes distribuidos en todo el mundo
    • Los usuarios pueden ejecutar pruebas de red como ping y traceroute a través de esta red
  • La herramienta CLI automatiza el proceso con la librería globalping-ts
    • Hace pruebas de ping de la IP ingresada desde varios continentes
    • Selecciona el continente con la latencia más baja
    • Luego realiza mediciones más detalladas con varios probes dentro de ese continente

Estructura por etapas de la medición

  • Paso 1 (detección de continente): prueba de ping con 5 probes por continente
    • Ejemplo de resultado: Europa 32.39ms, Norteamérica 137.18ms → se elige Europa
  • Paso 2 (detección de país): medición con 50 probes dentro del continente seleccionado
    • Resultado: Polonia 7.29ms, Alemania 13.42ms, Lituania 17.65ms → se determina Polonia
  • Paso 3 (detección de estado en EE. UU.): prueba con 50 probes dentro de Estados Unidos
    • La IP de “Bahamas” de NordVPN se determinó en realidad como Florida (0.45ms)
  • Paso 4 (detección de ciudad): medición con 36 probes dentro del estado
    • Resultado: Miami (0.00ms), seguida por West Palm Beach y Tampa

Precisión y limitaciones

  • El “magic field” de Globalping elige probes aleatoriamente a nivel continental, por lo que algunos países podrían quedar fuera
    • Esto puede provocar clasificaciones erróneas en países vecinos
  • Para mejorar la precisión, hace falta especificar probes directamente por país o estado y ajustar la cantidad de probes
    • Ejemplo: para Norteamérica se recomiendan 200 probes en EE. UU., 20 en Canadá y 10 en México
  • La versión actual usa la cantidad mínima de probes para que usuarios no autenticados también puedan ejecutarla
    • Con autenticación, se pueden hacer hasta 500 pruebas por hora, y se pueden obtener créditos adicionales mediante hosting de probes o patrocinio en GitHub

Ejecución y uso de la herramienta de código abierto

  • Comando: geolocate $IP
    • La opción –limit permite ajustar la cantidad de probes por etapa
  • La documentación en GitHub muestra el uso completo
  • Se agradecen propuestas de mejora vía Pull Request
  • También se puede solicitar créditos gratuitos y participar alojando probes

Conclusión

  • La estimación de ubicación IP basada en latencia es un método preciso y práctico cuando se dispone de suficientes puntos de observación
  • Con la red Globalping y una herramienta CLI de código abierto, cualquiera puede verificar fácilmente la ubicación real de una IP
  • Se confirman múltiples usos posibles, como validar ubicaciones falsas de VPN, analizar enrutamiento de red y depurar rendimiento

1 comentarios

 
GN⁺ 2026-02-02
Comentarios en Hacker News
  • Es un pequeño proyecto para probar si es posible hacer estimación geográfica usando servicios como Globalping
    Es solo una demo sencilla, así que no alcanza para uso real en producción
    Para hacerlo bien, se necesitan al menos 500 probes en cada etapa
    Se evitó optimizar a propósito para no superar los límites para usuarios anónimos
    • Parece que se podría usar un método de gradient descent para reducir la cantidad de probes y aun así mejorar la eficiencia
      La idea sería medir 3 veces desde varios continentes al inicio, descartar el probe más lento y agregar nuevos probes cerca de los más rápidos, repitiendo el proceso
      Así, en vez de dividirlo en 5 etapas, quizá se podría ir “siguiendo” la ubicación real en tiempo real
      La idea es tratar la latencia como un campo potencial escalar y usar su gradiente
    • ¿En teoría no bastarían 3 probes?
  • Impresiona que esté hecho sin IA
    Me dio risa que los mensajes de commit fueran de una sola palabra, pero hasta se siente más humano
    • Como hay separadores “══════” en el código, me da la impresión de que algunas partes fueron generadas por Claude
  • Me pregunto si sería posible que el servidor medido agregara latencia artificial según la IP de origen para engañar sobre su ubicación
    • Totalmente posible
      Por ejemplo, con herramientas como fakeroute se podrían hacer engaños todavía más elaborados
      Casi no tendría utilidad práctica, pero es una idea divertida
    • No es imposible, pero simplemente dejar de responder a ping sería mucho más fácil
    • traceroute ya de por sí es una herramienta difícil de interpretar, así que es muy fácil falsificarlo
      Como en aquel caso en que The Pirate Bay fingió haberse mudado a Corea del Norte, un AS incluso podría agregar AS falsos a la ruta BGP para que pareciera más creíble
      Esto hasta podría convertirse en un juego del gato y el ratón con las VPN
      Referencias relacionadas: discusión en Reddit, caso en HN
    • Algunos ISP regionales de EE. UU. (Xfinity, Charter, etc.) ya introducen latencia artificial por Bufferbloat
      Incluso en enlaces de 1000/30Mbps se han visto retrasos de hasta 2500ms
  • Vi un enfoque parecido en la investigación ‘You Can’t Cheat Time’, presentada en DEFCON 31
    Video de la charla
    Las limitaciones de la geolocalización basada en ping son estas:
    la IP ya tiene información de ubicación en una base de datos, la asimetría de enrutamiento rompe el modelo de distancia, con Anycast/CDN una sola IP puede existir en varias regiones, e ICMP puede estar bloqueado o tener baja prioridad
    Yo usé un modelo de latencia HTTP(S) + ML (SVR) en lugar de ping, entrenado con 39 mil datos
    En servidores detrás de CloudFront, el error era de unos 600 km
    Más que la precisión, lo importante es la detección de sandbox, el malware con geofencing y aportar una señal de ubicación secundaria cuando falla la IP DB
    • Si alguien quisiera evitar el rastreo, podría agregar latencia aleatoria a todos los paquetes o definir reglas de retraso intencional por origen del ping para aparentar la ubicación deseada
  • Sorprende que esto funcione aunque la latencia varíe tanto
    Hace tiempo, hablando con un amigo de Países Bajos, me pasó que desde Reino Unido accedía a contenido de NL con menor latencia
    Probablemente se deba a diferencias en la calidad del peering
    • Trabajo en IPinfo
      Estamos colaborando con IXPs y grandes organismos de Internet en proyectos de intercambio de datos de enrutamiento y peering
      Hay países que hacen peering directo con IXPs de otros continentes y eso provoca diferencias de latencia equivalentes a miles de km
      Incluso hay casos en que el tráfico entre dos operadoras del mismo país sale al extranjero y luego regresa
      Estamos corrigiendo estos fenómenos con algoritmos de geoinformación basados en medición
      El objetivo final es ayudar a que IXPs, operadoras y organismos de gobernanza de Internet resuelvan estos problemas
    • También podría deberse simplemente a la latencia del acceso local
      En VDSL o DOCSIS puede haber entre 5 y 15ms de retraso solo en un tramo de 1 km
      Entre Londres y Ámsterdam son unos 7ms
    • Tal vez era porque recibías contenido cacheado desde un PoP cercano
      Antes incluso faltaba fibra óptica en ciudades importantes de Países Bajos
    • En mi ciudad, la distancia en línea recta hasta un servidor en Francia es de 250 km, pero calculada por ping da 2000 km
      O sea, una distancia inflada más de 8 veces respecto a la real
      Un servidor en Reino Unido está más lejos, pero aun así da menor ping
      Un enfoque basado en traceroute parece más realista que uno basado en ping
  • Gracias a Dimitry. Todo el equipo de IPinfo agradece la mención
    El investigador Calvin va a dar una charla en NANOG96 sobre geolocalización IP basada en mediciones
    Enlace de la charla
  • La idea y la ejecución están realmente muy buenas
    Ojalá hubiera más proyectos así en HN
  • Por lo que se ve en el artículo, parece que simplemente elige como ubicación la del ping más corto
    Es un enfoque demasiado simple, así que quizá usar triangulación (triangulation) daría más precisión
    • Como ya se mencionó en el artículo, el objetivo era solo una prueba de concepto sencilla
      Con suficientes probes y un poco de suerte, funciona sorprendentemente bien
      Claro que hay formas más inteligentes de hacerlo
    • Pero los paquetes no viajan en línea recta, así que un cálculo simple de distancia no tiene mucho sentido
  • Comparto experiencia usando algo así en entornos de servicio reales
    1. En el enrutamiento de Internet, la trilateración (trilateration) casi nunca funciona
      Por eso, en la práctica, usar la medición individual más cercana suele ser lo más realista
      Para obtener datos útiles, se necesitan miles de nodos por ciudad
    2. Estas mediciones sirven mejor para validar datos de ubicación ya existentes
    3. Los hops de traceroute son útiles para encontrar la ubicación de routers
      RIPE IPmap ya mapea con bastante precisión la mayoría de los routers públicos
    4. Funciona bien para infraestructura o IPs de servidores, pero tiene límites en redes de usuarios comunes
      También recomiendo ping.sx como herramienta de comparación
  • Si miras la IP route del camino de regreso, muchas veces se puede acertar con bastante precisión al menos a nivel de estado
    A menudo el FQDN del último hop incluye un código de aeropuerto o de ciudad, lo que ayuda mucho