If you want better accuracy, higher update frequency, an enterprise-ready solution, and more lenient license and copyright terms, you might be interested in our open-access database solutions. This guide showcases how to migrate from MaxMind’s Geolite™ Country database to IPinfo’s IP to Country database.
Installation Process
Compared to the MaxMind database, migrating to IPinfo’s country database is a breeze.
Factors | MaxMind | IPinfo |
---|---|---|
Download link | https://download.maxmind.com/app/geoip_download?edition_id=GeoLite2-Country&license_key=YOUR_LICENSE_KEY&suffix=tar.gz | https://ipinfo.io/data/free/country.mmdb?token=YOUR_TOKEN |
Token | Get your license key from your profile page. Remember the license key only is viewable once after it is generated. So you need to make a note of it or else you have re-generate another license key. | You can use your IPinfo access token to download your accessible databases. You can view it any time you want from your account dashboard: Log in to your account - IPinfo.io |
Compression | The downloaded database is tar-compressed and then gzipped compressed. | IPinfo’s MMDB file is relatively small (~20 MB), so we didn’t intentionally compress the file. |
Files | The unzipped database contains a directory that contains the database and 2 license files. | You are presented with only the MMDB database as you download it. There is no directory, just the file. |
License | You must be conscious of the license agreement of MaxMind that grants you limited usage. | IPinfo’s license agreement is a simple CC BY SA 4.0 and requires only an attribution statement. Our open-access database grants both personal and commercial use. |
IPinfo MMDB Output
IPinfo returns a more simplified response to an IP lookup
JSON response:
{
"continent": "NA",
"continent_name": "North America",
"country": "US",
"country_name": "United States"
}
MaxMind MMDB Output
MaxMind provides its data in multiple language translations and the database is a nested format, which makes data queries difficult.
{
"continent": {
"code": "NA",
"geoname_id": 6255149,
"names": {
"de": "Nordamerika",
"en": "North America",
"es": "Norteamérica",
"fr": "Amérique du Nord",
"ja": "北アメリカ",
"pt-BR": "América do Norte",
"ru": "Северная Америка",
"zh-CN": "北美洲"
}
},
"country": {
"geoname_id": 6252001,
"iso_code": "US",
"names": {
"de": "Vereinigte Staaten",
"en": "United States",
"es": "Estados Unidos",
"fr": "États Unis",
"ja": "アメリカ",
"pt-BR": "EUA",
"ru": "США",
"zh-CN": "美国"
}
},
"registered_country": {
"geoname_id": 6252001,
"iso_code": "US",
"names": {
"de": "Vereinigte Staaten",
"en": "United States",
"es": "Estados Unidos",
"fr": "États Unis",
"ja": "アメリカ",
"pt-BR": "EUA",
"ru": "США",
"zh-CN": "美国"
}
}
}
Migration to IPinfo Country from Geolite2™ Country (Value Access)
To migrate from MaxMind to IPinfo, you must be aware of how information is structured in these databases. In MaxMind DBs, core information is stored 2-3 levels deep. On the other hand, IPinfo’s tabular structure makes the database accessible through a single query.
Value | IPinfo | MaxMind | Output |
---|---|---|---|
Continent Code | response["continent"] |
response["continent"]["code"] |
NA |
Continent Name | response["continent_name"] |
response["continent"]["names"]["en"] |
North America |
Country Code | response["country"] |
response["country"]["iso_code"] |
US |
Country Name | response["country_name"] |
response["country"]["names"]["en"] |
United States |
If you are using an MMDB reader library, please note that most, if not all, MMDB reader libraries are schema agnostic. This means that the library you used to parse MaxMind’s MMDB files would work the same with IPinfo’s database. All you need to do is account for the schema differences and access the correct keys to get the values you need.
If you need further assistance feel free to open a thread in our community support channel.