Cómo obtener una ubicación precisa en tiempo real para una dirección IP

Realmente no puedes … a menos que puedas hacer que el dispositivo use la IP para decirte su ubicación (si lo sabe).

Los datos disponibles de lo contrario son solo de una base de datos. Las “LAN” (redes de área local) a menudo son muy locales … ya que Ethernet solo puede ejecutar 300 pies … pero en términos de redes de módem de cable (DOCSIS) … una “subred” específica (LAN) aún puede sobre un código postal completo, o más . Depende de la tecnología de red, el proveedor y otras variables.

Las IP se pueden mover y cambiar en cualquier momento. Por lo general, no es común mover una IP de California a Nueva York, pero puede suceder y sucede. Por lo general, permanecen dentro del registro de ruta regional (RIR, como ARIN), pero eso es todo lo que se espera. Las IP a menudo se agregan en bloques más grandes … por ejemplo … XY *. * O XY0.0 / 16 se pueden asignar a una región, como Colorado … y luego se dividen en redes 64/22 (1024 IP cada una) … esas se asignan a un enrutador local que pueda dar servicio a un par de suburbios. En términos de redes de cable módem … un CMTS puede servir a 200k clientes ahora. El mercado de Denver puede dividirse en algo así como 10–15 “cabeceras”, cada una con un CMTS, o más … algunas tienen 5 o 10 en ciudades más grandes.

En general, no puedes. Las bases de datos de ubicación IP se actualizan cada pocas semanas, pero los cambios suelen tardar meses en funcionar a través de los distintos proveedores de bases de datos. La especificación de IP no contiene disposiciones para la información de ubicación.

Puedes usar una API para hacer eso.

Una API gratuita es freegeoip.net. Puede consultar la API con cualquier dirección IP y devolverá la ubicación que ha almacenado para esa dirección IP en un formato JSON.

Ejemplo: https://freegeoip.net/json/IPADDRESSHERE