Что такое RDAP?
RDAP (Registration Data Access Protocol) является современным протоколом доступа к регистрационным данным доменов, стандартизированным IETF. Разработанный как преемник WHOIS, RDAP предоставляет структурированные ответы в машиночитаемом формате JSON, благодаря чему разработчикам значительно проще интегрировать функции поиска доменов в свои приложения.
Почему RDAP важен для разработчиков
Если вам когда-либо приходилось анализировать данные WHOIS, вы знаете, насколько это сложно. Каждый регистратор форматирует ответы по-своему, использует непоследовательные имена полей и возвращает неструктурированный обычный текст, из которого полезную информацию приходится извлекать с помощью сложных регулярных выражений. RDAP решает эти проблемы благодаря стандартизированной схеме JSON, которая единообразно работает на всех серверах, совместимых с RDAP.
Основные технические преимущества
Структурированные ответы JSON: Ответы RDAP используют стандартизированную модель данных JSON, определённую RFC 9083. Благодаря этому клиенты получают единообразную структуру для анализа, хотя сервис может исключать или скрывать поля в соответствии со своей политикой доступа. RESTful-архитектура: RDAP использует стандартные методы HTTP и коды состояния. GET-запрос возвращает информацию о домене, если сервер находит соответствующий объект. Ответ 404 означает, что запрошенный объект не найден в этом сервисе, но сам по себе не доказывает, что домен можно зарегистрировать. HTTPS по умолчанию: В отличие от WHOIS, который передаёт данные в открытом виде через порт 43, RDAP использует HTTPS, обеспечивая зашифрованное соединение между вашим приложением и сервером RDAP. Поддержка интернационализации: RDAP корректно обрабатывает IDN (Internationalized Domain Names) и символы Unicode, что необходимо для глобальных приложений.Как работает RDAP
Когда вы запрашиваете домен через RDAP, процесс проходит следующие этапы:
1. Поиск через Bootstrap: Ваш клиент запрашивает реестр IANA RDAP Bootstrap, чтобы найти авторитетный RDAP-сервер для TLD
2. HTTP-запрос: На URL RDAP-сервера отправляется GET-запрос (например, https://rdap.verisign.com/com/v1/domain/example.com)
3. Ответ JSON: Сервер возвращает структурированный объект JSON, содержащий регистрационные данные, коды состояния и события
Пример структуры ответа RDAP
{
"objectClassName": "domain",
"handle": "example.com",
"ldhName": "example.com",
"status": ["client transfer prohibited"],
"events": [
{"eventAction": "registration", "eventDate": "1995-08-14T04:00:00Z"},
{"eventAction": "expiration", "eventDate": "2025-08-13T04:00:00Z"}
]
}
Сравнение RDAP и WHOIS
| Возможность | RDAP | WHOIS |
|---|---|---|
| Формат данных | Структурированный JSON | Неструктурированный текст |
| Транспорт | HTTPS (зашифрованный) | Открытый текст (порт 43) |
| Стандартизация | RFC 9082 и RFC 9083 | Непоследовательная |
| Поддержка IDN | Встроенная | Ограниченная |
| Тип запроса | RESTful HTTP | Пользовательский протокол |
Реализация RDAP в приложениях
Для разработчиков, создающих инструменты работы с доменами, RDAP является рекомендуемым подходом. Большинство современных средств проверки доступности доменов, включая DomScan, используют RDAP как основной источник данных, поскольку он предоставляет:
- Свидетельства доступности: Ответ 404 означает, что запрошенный сервер RDAP не нашёл соответствующий объект. Сам по себе он не доказывает, что домен доступен для регистрации
- Расширенные метаданные: Доступ к датам регистрации, датам окончания регистрации и кодам состояния
- Единообразный анализ: Одна кодовая база обрабатывает все TLD
Статус внедрения RDAP
Для gTLD ICANN указывает, что 28 января 2025 года RDAP стал определяющим источником регистрационной информации, а реестры и регистраторы gTLD больше не обязаны в общем случае предоставлять сервисы WHOIS, за исключением .com, .name и .post. Политики ccTLD и внедрение RDAP различаются. Файл IANA Bootstrap по адресу https://data.iana.org/rdap/dns.json содержит актуальные сопоставления серверов RDAP для всех поддерживаемых TLD.
Лучшие практики
При реализации запросов RDAP кэшируйте ответы надлежащим образом, чтобы соблюдать ограничения частоты, реализуйте IANA Bootstrap для обнаружения серверов и обрабатывайте отдельно ответы «не найдено», перенаправления и ошибки, связанные с политикой. Ответ «не найдено» является свидетельством относительно запрошенного сервиса, а не доказательством возможности регистрации.