But I picked just one faulty classification of ipinfo.io, that's not fair, I know. I only wanted to point out that what you are doing is exactly the same as https://ipapi.is/ is doing and that we both make mistakes
----
You are using the 700 measuring servers to interpolate geolocations of IP addresses, right?
That works sometimes, but more than often it does not. It does not scale either.
Active latency triangulation of every IPv4 address (let's not even speak about IPv6) is simply not possible. The reasons are manyfold:
- Most hosts don't reply to ICMP
- Many routers block ICMP traffic, or they throttle / downgrade it, thus skewing measurements
- Traffic from your probing servers is probably not handled in the same way as is normal residential ISP traffic
- You have to constantly measure all IPv4, since IPs are constantly reassigned, which is simply not possible with only 700 servers
Latency triangulation works in theory, but in practice it is just not applicable to the full IP space.
Having said that, active geolocation with probing servers is still better than not doing it :D
Latency triangulation works much better in a passive way, meaning that a client is visiting a server that is under your control and you triangulate the client with JS for example (web sockets).
But I doubt that ipinfo.io has a significant share of the Internet's traffic...
Maybe I am missing something?