Периодически на проектах возникает необходимость определить геолокацию пользователя по его IP. Например, узнать его страну, чтобы сменить линейку тарифов или учесть законодательство.
Раньше мы пользовались базами
MaxMind GeoIP. Их можно было выгрузить в виде MMDB-файлов, это такой формат, поддерживающий бинарный поиск по диапазонам IP. У них есть Lite версия, ее вполне хватало. Но сейчас, вижу, для использования нужна регистрация, а еще лучше - много денег в кассу.
Еще один вариант -
DB-IP, у них тоже есть Lite-версия. Причем базы можно скачать. Правда, лицензия там -
Creative Commons Attribution, для использования в веб-приложениях нужно будет разместить ссылку на их сайт.
Есть
IP2Location, но там сразу цены конские.
Можно работать с сервисами через API. Есть, скажем,
IPinfo, онлайн, с бесплатным тарифом и рядом ограничений.
Или вот
IP-API. Отдают немало инфы. Но есть лимит в 45 запросов в минуту. И, понятно, в наше время нет гарантий трансграничной доступности сервиса.
Ну а бесплатно можно скачать MMDB с
вот этого сайта. Пишут, что не надо лицензий и ключей. Детализация только до уровня страны, город уже не найти. Но для многих случаев этого достаточно.
Если используете что-то подобное, поделитесь.
#tools