The internet was never designed for using location data, and it is fundamentally a system where location does not matter. One domain resolves to an arbitrary IP address and usually one does not care whether the packet travels for 3 seconds or half a second. IP addresses are assigned in a hierarchical manner. service providers get some subspaces and assign numbers to their customers (IANA => ISP => node).
there are several questions that arise:
* how accurate is an IP address as a measure of location? not very. at least say 1-5% of the time the GeoIP location will be off by > 200 km, and on average probably 50-100 km. for some countries with very low distribution of backbones this could be 500-1000 km.
* can one use various pings to verify location? possible, but certainly not trivial.
* TOR. with TOR you can spoof arbitrary locations. which is not the same as having that location as the endpoint (latency will be very high).
* packet traversal has very high variance. this makes a very complicated problem.
I'm not sure anyone has experimented with it. Here is a project which scrapes maxminds Geodata:
http://freegeoip.net
https://github.com/fiorix/freegeoip
http://www.maxmind.com/en/geolocation_landing
to find geolocation on a map:
http://itouchmap.com/latlong.html
Proof of location based on TCP/IP seems not very viable, at least when it is supposed to be universal (for some internet nodes it can be accurate enough). Which leaves such an enterprise more in the area of cjDNS/I2P or GPS/mobile phones.
A couple of pointers in that direction:
Todd E. Humphreys gave a TED talk on his work on next generation GPS http://www.ted.com/talks/todd_humphreys_how_to_fool_a_gps, http://www.ae.utexas.edu/faculty/faculty-directory/humphreys , where he predicts millimeter accuracy for GPS.
there is also the old idea of internet of things (where a map of location to internet is needed). But:
http://recode.net/2014/03/19/at-ted-sharpening-the-vision-of-the-internet-of-things/