Протокол: WHOIS → RDAP ⤢ WHOISRFC 3912 (2004) — TCP-порт 43, открытый текст Устаревший протокол. Неструктурированный вывод в свободном тексте. ⤢ RDAPRFC 7480–7485 (2015) — HTTPS, JSON Официальный преемник. Структурированный, защищённый, веб-нативный. ⤢ TransportTCP 43 (открытый текст) → HTTPS (TLS) RDAP шифрует запрос при передаче; WHOIS — нет. ⤢ OutputСвободный текст → структурированный JSON (RFC 7483) Один парсер работает для всех TLD вместо отдельного на каждый реестр. ⤢ Browser reachНевозможно → нативно RDAP рекомендует CORS (RFC 7480 §5); браузер может обращаться к реестру напрямую. ⤢ MandateОпционально → обязательно для gTLD ICANN требует RDAP от всех реестров и регистраторов gTLD с 2019 года. Пути запросов RDAP ⤢ domain/domain/<domain> Пример: /domain/example.com ⤢ ip/ip/<address> Пример: /ip/192.0.2.1 или /ip/2001:db8::1 ⤢ autnum/autnum/<asn> Пример: /autnum/13335 (без префикса AS) ⤢ entity/entity/<handle> Регистратор, регистрант или контакт по идентификатору handle. ⤢ nameserver/nameserver/<host> Полное (fully-qualified) имя хоста сервера имён. Ключевые поля ответа ⤢ objectClassNameТип объекта domain | ip | autnum | entity | nameserver ⤢ ldhNameИмя в форме LDH (ASCII) напр. EXAMPLE.COM. unicodeName несёт форму IDN. ⤢ status[]Флаги состояния EPP client/server prohibition, hold, pending и т. д. ⤢ events[]Вехи жизненного цикла registration, expiration, last changed, transfer — каждое с датой. ⤢ entities[]Контакты, каждый с roles[] registrar, registrant, abuse, technical, administrative. ⤢ nameservers[]Делегированные серверы имён ldhName и/или hostName на каждую запись. ⤢ secureDNSСостояние подписи DNSSEC delegationSigned: true означает, что зона подписана. Распространённые коды состояния (EPP) ⤢ clientTransferProhibitedТрансфер заблокирован регистратором Регистрант отключил передачу домена другим регистраторам. ⤢ clientUpdateProhibitedОбновления заблокированы регистратором Изменения записи не разрешены. ⤢ clientDeleteProhibitedУдаление заблокировано регистратором Домен нельзя удалить. ⤢ serverTransferProhibitedТрансфер заблокирован реестром Блокировка трансфера на уровне реестра. ⤢ serverDeleteProhibitedУдаление заблокировано реестром Защита от удаления на уровне реестра. ⤢ clientHold / serverHoldРазрешение DNS приостановлено Домен удаляется из зоны — он перестаёт резолвиться. ⤢ addPeriodНачальное окно регистрации Обычно первые 5 дней после регистрации. ⤢ autoRenewPeriodОкно автопродления после истечения Льготный период, в котором домен продлевается автоматически. ⤢ redemptionPeriodУдалён, можно восстановить за плату После удаления — короткое окно для восстановления домена. Bootstrap RDAP IANA (обнаружение сервера) ⤢ dns.jsonTLD → сервер RDAP data.iana.org/rdap/dns.json ⤢ ipv4.jsonдиапазон IPv4 → RIR data.iana.org/rdap/ipv4.json ⤢ ipv6.jsonдиапазон IPv6 → RIR data.iana.org/rdap/ipv6.json ⤢ asn.jsonдиапазон ASN → RIR data.iana.org/rdap/asn.json