DNS API (dig): CNAME, IP-адреса с геолокацией и NS
GET /v1/redirekto/dig показывает, куда на самом деле смотрит домен: проходит цепочку CNAME до конечного
имени, получает его A- и AAAA-записи, определяет страну, город и провайдера каждого IP и возвращает
NS-серверы домена.
Параметры
Заголовок раздела «Параметры»| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
domain |
string | да | домен; протокол, путь и порт отбрасываются, кириллический домен переводится в punycode |
curl -G https://proxy.seyka.ru/v1/redirekto/dig \ -H "Authorization: Bearer $SEYKA_API_KEY" \ --data-urlencode "domain=www.github.com"{ "domain": "www.github.com", "cnameChain": ["www.github.com"], "resolvedIps": [ { "ip": "140.82.121.4", "version": 4, "countryCode": "DE", "country": "Germany", "city": "Frankfurt am Main", "org": "GitHub, Inc." } ], "queryTimeMs": 63}| Поле | Описание |
|---|---|
domain |
проверенный домен (для кириллического — в punycode); domainDisplay — исходное написание |
cnameChain |
имена, оказавшиеся CNAME, по порядку, начиная с запрошенного; конечное имя с адресами в цепочку не входит. Пустой массив — CNAME нет |
resolvedIps |
A- и AAAA-адреса конечного имени: ip, version (4/6) и, если известны, countryCode, country, city, org |
nameServers |
NS-записи самого запрошенного домена (у поддомена их обычно нет — тогда поля нет) |
queryTimeMs |
время запроса, мс |
error |
причина, если адреса получить не удалось |
В примере www.github.com — CNAME на github.com, поэтому в цепочке одно имя, а адреса — у github.com.
Пакетный запрос
Заголовок раздела «Пакетный запрос»POST /v1/redirekto/dig принимает массив из 1–25 объектов {"domain": "…"} и возвращает массив результатов
в том же порядке:
curl https://proxy.seyka.ru/v1/redirekto/dig \ -H "Authorization: Bearer $SEYKA_API_KEY" \ -H "Content-Type: application/json" \ -d '[{"domain": "seyka.ru"}, {"domain": "www.github.com"}]'Общие правила пакетов — в обзоре Redirekto.
Поведение и ограничения
Заголовок раздела «Поведение и ограничения»- На весь разбор — цепочку CNAME и запросы A/AAAA/NS — отводится 10 секунд; по истечении результат придёт с
"error": "DNS lookup timed out". - Цепочка CNAME проходится не глубже 11 шагов; более длинная —
"error": "CNAME chain too deep". - В ответ попадают только публичные адреса: частные, зарезервированные и внутренние отбрасываются. Если
публичных адресов нет, результат — с
"error": "No DNS records found"и пустымиcnameChainиresolvedIps(nameServersпри этом может быть заполнено). - Домен с недопустимыми символами —
"error": "Invalid domain format". Все эти случаи — ответ200;502означает, что сервис не ответил. Коды — на странице Ошибки. - Геолокация IP — по базе адресов, без гарантии точности до города; если данных нет, остаётся только
ipиversion.
Каждый домен — один вызов, пакет — по числу элементов. Цена — в таблице цен.