Бесплатный API для геолокации IP и анализа рисков

Бесплатный API геолокации IP и оценки рисков

Высокая производительность, IPv4/IPv6, многоязычность. Бесплатно и без регистрации.

⏱️
Ограничение частоты запросов Максимум 1 запрос в секунду (1 req/s).
♾️
Общая квота Без дневных или общих лимитов квоты. 100% бесплатно.

Эндпоинты

GET https://api.myipdns.com/
IPv4 IPv6 JSON
GET https://v4.api.myipdns.com/
Только IPv4 Текст
GET https://v6.api.myipdns.com/
Только IPv6 Текст

Параметры

Параметр Описание Пример
ip IP для запроса. Если пропущено, возвращает ваш IP. ?ip=8.8.8.8
lang Язык ответа. Поддерживаются: en, cn, ru, ja, fr, de, es, pt. ?lang=zh-CN

Пример ответа JSON

Request: GET https://api.myipdns.com/?ip=8.8.8.8&lang=en

{
  "ip": "8.8.8.8",
  "continent": "North America",
  "continent_code": "NA",
  "country": "United States",
  "country_code": "US",
  "timezone": "America/Chicago",
  "latitude": 37.751,
  "longitude": -97.822,
  "asn": 15169,
  "as_org": "Google LLC",
  "native_type": "native",
  "rir_registry": "arin",
  "is_hosting": true,
  "usage_type": "DCH",
  "query_time": "0.03",
  "source": "maxmind.com"
}

API диагностики сетевого стека и топологии в терминале (/check)

Высокоточная прямая диагностика стека протоколов и топологии выхода для curl, wget и скриптов автоматизации без искажений прокси.

Лимит скорости чтения 1 запрос/сек (всплеск до 5) на IP. При превышении возвращается HTTP 429.
🔗
Квота создания ссылок 5 записей/час на IP. При превышении диагностика возвращается без ссылки (HTTP 200).

Эндпоинты

GET https://myipdns.com/check
Dual-Stack Формат по умолчанию (Цвета ANSI / Терминальный текст)
GET https://myipdns.com/check?format=line
Dual-Stack Строчный формат (KEY=VALUE для Shell-скриптов и awk/grep)
GET https://myipdns.com/check?format=json
Dual-Stack Структурированный формат JSON

Параметры

Параметр Описание Пример
format Указание формата: json (JSON) или line (формат KEY=VALUE) ?format=line / ?format=json
share Создать 30-дневную ссылку на отчет и SVG-бейдж (лимит 5 записей/час/IP) ?share=1
color Отключить цвета ANSI: ?color=0 или ?plain=1 ?color=0 / ?plain=1
-4 / -6 Явная проверка стека IPv4 или IPv6: curl -4 или curl -6 curl -4 https://myipdns.com/check

Полная спецификация полей JSON

Field Type Description
ipstringIP-адрес выхода клиента
ip_versionstringВерсия IP (IPv4 или IPv6) (IPv4 / IPv6)
countrystringНазвание страны по консенсусному голосованию источников
country_codestringДвухбуквенный код страны ISO 3166-1 alpha-2
citystring | nullНазвание города (или null, если не измерено)
asnstringНомер автономной системы (например, AS15169)
as_orgstringНазвание организации / провайдера ASN
is_datacenterbooleanФлаг дата-центра или сети хостинга
is_proxybooleanФлаг коммерческого прокси или выхода VPN
transportobjectОбъект транспортного уровня. 🔴 Неизмеренные метрики строго null (никогда не 0 или false)
transport.mssstringИзмеренный TCP Maximum Segment Size (например, 1380 или "n/a")
transport.mtuinteger | nullВычисленный Path MTU на основе MSS (например, 1420 для WireGuard, или null)
transport.mtu_notestring | nullЭвристическая классификация типа соединения по MTU (или null)
transport.wscaleinteger | nullКоэффициент масштабирования окна TCP (или null)
transport.syn_wininteger | nullРазмер начального окна TCP SYN (или null)
transport.syn_ttlinteger | nullОценочный начальный TTL пакета SYN (или null)
transport.option_orderstring | nullПорядок опций TCP SYN через запятую (или null)
transport.ts_valinteger | nullЗначение временной метки TCP (или null)
transport.ts_hzinteger | nullВычисленная частота таймера TCP в Гц (или null)
transport.ecn_enabledboolean | nullСтатус ECN (или null, если не измерено)
cryptoobjectОбъект криптографического и прикладного уровня (версия HTTP, TLS, JA4, JA3, ALPN)
verdictobjectВердикт топологии, основание вывода и описание
share_urlstring (optional)30-дневная ссылка на отчет при запросе ?share=1 в пределах квоты
badge_urlstring (optional)URL SVG-бейджа статуса при запросе ?share=1 в пределах квоты

Строчный формат (KEY=VALUE для Shell-скриптов и awk/grep) Example:

ip=35.212.190.31
ip_version=IPv4
country=United States
country_code=US
city=San Jose
asn=AS15169
as_org=Google LLC
is_datacenter=true
is_proxy=false
mss=1380
mtu=1420
mtu_note=Encapsulated Tunnel (WireGuard / Tailscale / CDN)
wscale=7
syn_win=65535
syn_ttl=64
option_order=MSS,SACK_PERM,TS,NOP,WS
ts_val=987654
ts_hz=1000
ecn_enabled=true
http_proto=HTTP/2.0
tls_version=TLS 1.3
ja4=t13d1516h2_8daaf6152771_000000000000
verdict=topo_terminated_remote_protocol
verdict_basis=reputation
verdict_summary=Data Center / Proxy Egress (Hosting Network)

Структурированный формат JSON Example:

{
  "ip": "35.212.190.31",
  "ip_version": "IPv4",
  "country": "United States",
  "country_code": "US",
  "city": "San Jose",
  "asn": "AS15169",
  "as_org": "Google LLC",
  "is_datacenter": true,
  "is_proxy": false,
  "transport": {
    "mss": "1380",
    "mtu": 1420,
    "mtu_note": "Encapsulated Tunnel (WireGuard / Tailscale / CDN)",
    "wscale": 7,
    "syn_win": 65535,
    "syn_ttl": 64,
    "option_order": "MSS,SACK_PERM,TS,NOP,WS",
    "ts_val": 987654,
    "ts_hz": 1000,
    "ecn_enabled": true
  },
  "crypto": {
    "http_proto": "HTTP/2.0",
    "tls_version": "TLS 1.3",
    "ja4": "t13d1516h2_8daaf6152771_000000000000"
  },
  "verdict": {
    "key": "topo_terminated_remote_protocol",
    "basis": "reputation",
    "summary": "Data Center / Proxy Egress (Hosting Network)"
  }
}

Интерфейс командной строки (CLI / curl)

Сложная интеграция с API не требуется. Выполняйте команды прямо в терминале для получения данных об IP или IP в виде простого текста. CLI-запросы ограничены 1 запросом в секунду.

1. Получить стандартный JSON-профиль собственного IP:

curl https://myipdns.com

2. Получить стандартный JSON-профиль целевого IP (например, 8.8.8.8):

curl https://myipdns.com/ip/8.8.8.8

3. Получить строку IP в виде простого текста (идеально для shell-скриптов):

curl https://myipdns.com/ip

Часто задаваемые вопросы по API

Принципы измерения сетевого стека, правила обработки null и интеграция в скрипты.

/check выполняет HTTP 302-перенаправление напрямую на наш двухстековый зонд (check_dns.myipdns.com). Минуя обратные прокси и CDN, ядро сервера напрямую анализирует входящий TCP SYN-пакет.

Для предотвращения искажения данных. В TCP MTU=0 недопустимо, а отключенный ECN отличается от неизмеренного ECN. Неизмеренные параметры строго возвращают null.

Используйте curl -sL 'https://myipdns.com/check?format=line' для формата KEY=VALUE с помощью awk или grep, либо ?format=json в сочетании с jq.

Чтение свыше 1 запр/сек (всплеск 5) возвращает HTTP 429 с Retry-After. Создание ссылок свыше 5/час/IP возвращает диагностику нормально (HTTP 200) без генерации ссылки.

Благодарности

Мы используем следующие сторонние API для проверки сети.