GeoIP is based by Maxmind data which you can get the data from IP.
If you have the data from Maxmind you can use the GeoIP helper very usefully for your own product.And thule provides the Geo Data.
$FE->loadHelper("geoip");
$FE->Geoip->getGeoByThule("123.123.123.123");