Suricate - это REST API над MaxMind GeoLite2 базой. На вход подаем IP-адрес, на выходе получаем примерный город и страну (можно на русском или английском языках)
MaxMind обновляет базу раз в месяц.
Свежую базу можно скачать по адресу http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.mmdb.gz
Далее ее надо распаковать и положить в maxminddb/GeoLite2-City.mmdb.
Поддерживаются следующие роуты:
Запрос к базе. Параметры:
ip(обязательный) - ip адрес в формате x.x.x.xlanguage(необязательльный, по умолчанию ru) - выбор языка ответа, возможные варианты ru, en
Формат ответа:
200и json в теле ответа:
{
"country": "США",
"city": "Маунтин-Вью",
"latitude": 37.386,
"longitude": -122.0838,
"time_zone": "America/Los_Angeles"
}400если ничего не найдено
Проверка сервиса, делает внутренний запрок к самому себе, если все ОК - возвращает 200,
в противном случае - 400