this is essentially proof of uptime
I also want them to be geographically distributed. Otherwise it is possible to set a cluster of virtual nodes on the same physical machine with high uptime, and ping between them will be near zero...
Finding the geographical location of a host is an interesting question in all cloud(like) environments. I'm afraid a that's not going to work without a GPS device. As an alternative, you can investigate the next routing hops, but trace route not allowed on many networks, so that might or might not work.