R
Roy Smith
ÉΪÉ«É»όλας said:But then how do you explain the fact that
http://www.maxmind.com/en/geoip_demo pinpointed Thessalon£ki and not
Athens and for 2 friends of mine that use the same ISP as me but live
in different cities also accurately identified their locations too?
I just tried 24.136.109.105 on that demo. It comes up with:
US Englewood Cliffs,
New Jersey,
United States,
North America
07632 40.8915,
-73.9471
Time Warner Cable
Time Warner Cable
rr.com
501
Not bad. Google street view shows that as a very pretty residential
neighborhood in one of New York's fancier suburbs. Unfortunately, it
happens to be in run-down industrial building in a factory district
about 20 km away.
There are lots of interesting (and superior) ways to do geolocation
other than looking up IP addresses. Here's a few:
1) GPS. Obviously, if you're on a device that has a GPS receiver and
you have access to that data, and you've got a good signal, nothing is
going to beat GPS. Well, other than Glonass. And Galileo and IRNSS,
whenever they become operational. And whatever the Chinese are calling
theirs.
2) Cell (i.e. mobile) phone tower triangulation. The phone systems know
where all the towers are and know which towers your phone is receiving
signal from. Since they know the signal strengths from each of those
towers, they can do a rough triangulation. It's kind of messy since
signal propagation depends terrain and obstructions which aren't well
mapped. But it's better than nothing.
3) WiFi triangulation. Right now, I can see four WiFi networks (Worb,
J24, MusicWiFi, and jcglinksys). There are databases of WiFi network
names and approximate locations (obtained by wardriving and other ways).
If you can see enough networks, it's easy to look in the database and
figure out where you must be.
4) Who knows what the future will bring. I suppose some day, inertial
nav will become cheap enough that we'll all be walking around with INS
in our phones.
In general, mobile operating systems control direct access to all of
these signals and only allow applications to get the location data when
the user agrees to such access.