People can go here - http://mylocationtest.appspot.com/ - and see what location information is right for them.
For me, lat / long is only the nominal city center that is listed - about 20 km from my actual location. Internet Service Provider - Rogers Canada.
Apparently, sometimes the country returns as "ZZ". http://code.google.com/p/googleappengine/issues/detail?id=5296
Information about this IP address is usually packed using ASN . This tells you the ISP, and as mentioned above, only they can tell where one of their IPs is assigned. Perhaps the accuracy of the location information depends on the provider.
(This is not an answer to the question - just a further discussion - but in fact it did not work in the comment).
source share