| Название файла | Записей | Размер файла |
|---|---|---|
| pro.cidr.csv | 601247 | 11376044 байт |
| pro.csv | 601247 | 18365295 байт |
| pro.dat | 601233 | 2300824 байт |
| pro.mmdb | 601247 | 4195168 байт |
Мы собираем данные из четырёх источников:
- около 30 % — геоданные полученные из Google
- информация от провайдеров
- публичные сервисы (RIP, DNS, ...)
- собственные исследования сети
Так получается актуальная база, которая связывает IP‑адреса со странами.
CSV — таблицы для загрузки в базы данных или ручного анализа
GeoIP2 — лёгкая интеграция с веб-серверами (Nginx, Angie) и другими современнными системами и
программами
geoip — старый формат .dat для совместимости с устаревшими системами. Не рекомендуется к
использованию
API — Запросы к БД можно делать по HTTP API и JSON
Маркетолог
Анализ поведения посетителей сайта для повышения эффективности рекламных кампаний.
Веб-мастер
Адаптацияч контента по геолокации: актуальные базы IP‑адресов стран для настройки сайта и повышения
вовлечённости.
Информационная безопасность
Выявление потенциально опасных запросов, защита сайта от ботов и мошеннических действий.
Продакт-менеджер
Правильная локализация сайта, персонализация контента для регионов. Определение способов оплаты для
регионов.
- Доступ в течении месяца
- Ежедневные обновления
- Все доступные форматы базы данных для скачивания
- 1,500,000 запросов / мес в API
- Дополнительные поля API по запросу
- Настройка БД под задачи: добавляю/удаляю сети, диапазоны и поля по запросу
3 500 ₽/мес
API - доступно после покупки полной версии базы данных.
Запрос GET /v1/ip-country/<ip> возвращает структуру в JSON:API стиле. Поддерживается только
IPv4.
Бэкенд проверяет входные данные, обращается к полной базе данных и выдаёт ответ в формате с унифицированными кодами ошибок.
| Condition | HTTP код | Пример ответа |
|---|---|---|
| Успешный запрос | 200 |
{ "data": {
"type":"ip-lookup",
"id":"5.255.255.242",
"attributes":{ "country_code":"RU" }
} }
|
| Пропущен ip параметр запроса | 400 |
{ "errors": [{
"status":"400",
"title":"Invalid request",
"detail":"IP parameter is required",
"source":{"parameter":"ip"},
"code":"invalid_parameter"
}}] }
|
| Ошибка в формате IPv4 | 400 |
{ "errors": [{
"status":"400",
"title":"Invalid IP address",
"detail":"Invalid IP address format: not-an-ip",
"source":{"parameter":"ip"},
"code":"invalid_ip_format"
}}] }
|
| Ошибка при обработке запроса | 500 |
{ "errors": [{
"status":"500",
"title":"Database lookup error",
"detail":"Error looking up IP: …",
"source":{"parameter":"ip"},
"code":"database_error"
}}] }
|
| IP не найден в базе данных | 404 |
{ "errors": [{
"status":"404",
"title":"IP not found",
"detail":"No data found for IP: 203.0.113.5",
"source":{"parameter":"ip"},
"code":"ip_not_found"
}}] }
|
Особенности
- Успешные ответы оформлены по стандарту JSON:API — код страны (ISO 3166‑1 alpha‑2) передаётся в attributes.country_code.
- Объекты ошибок имеют одинаковую структу: содержат поля status и code.