RDAPとは?
RDAP(Registration Data Access Protocol)は、ドメイン名登録データにアクセスするための最新のIETF規格プロトコルです。 RDAPはWHOISの成功者として開発され、JSON形式の機械で読みやすい応答が構築され、開発者がドメインルックアップ機能をアプリケーションに統合することが大幅に容易になります。
開発者向け RDAP マット
WHOISデータを解析しようとすると、痛みがわかります。 各レジストラは、その応答を異なるフォーマットでフォーマットし、一貫性のあるフィールド名を使用し、複雑な正規表現パターンが必要な非構造的なプレーンテキストを返し、有用な情報を抽出します。 RDAP は、RDAP 準拠サーバー全体で一貫して動作する標準化された JSON スキーマでこれらの問題を解決します。
主要な技術的な利点
厳格なJSON応答:すべてのRDAPサーバは、RFC 7483で定義された同じJSON形式のデータを返します。 これは、レジストラやレジストリに関係なく、任意のドメインで動作する1つのパーサを書くことができることを意味します。 RESTful Architecture: RDAP は、標準の HTTP メソッドとステータスコードを使用します。 RDAPエンドポイントへの簡単なGETリクエストはドメイン情報を返します。HTTP 404は利用可能なドメインを示しています。特別なプロトコル処理は必要ありません。 デフォルトでHTTPS: ポート43を超えるテキストでデータを送信するWHOISとは異なり、RDAPはHTTPSを使用し、アプリケーションとRDAPサーバー間で暗号化された通信を保証します。 国際化サポート:RDAPは、国際化ドメイン名(Internationalized Domain Names)とUnicode文字を適切に処理します。RDAPの仕組み
ドメインを RDAP 経由で照会すると、このプロセスは次の手順に従います。
1. Bootstrap Discovery:クライアントはIANA RDAP Boottrapレジストリに問い合わせ、TLDのAuthoritative RDAPサーバーを見つける
2. HTTP Request: GET リクエストは RDAP サーバー URL に (例: 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の比較
| 特徴: | ダップ | ニュース |
|---|---|---|
| データ形式 | 構造 JSON | 未構造化テキスト |
| 交通アクセス | HTTPS(暗号化) | プレーンテキスト (ポート 43) |
| 標準化 | RFC 7480-7484の特長 | パートナー |
| IDNサポート | ネイティブ | お問い合わせ |
| クエリタイプ | RESTfulのHTTP | カスタムプロトコル |
アプリケーションでRDAPを実装
開発者がドメインツールを作成するために、RDAPは推奨されるアプローチです。 DomScanを含むほとんどの近代的なドメイン可用性チェッカーは、RDAPを主要なデータソースとして使用しています。
- 信頼性の可用性の検出:HTTP 404の応答は、利用可能なドメインを決定的に表示します
- リッチメタデータ: 登録日、有効期限、ステータスコードへのアクセス
- 一貫した解析: 1つのコードベースはすべてのTLDを処理します
RDAPの採用状況
RDAP は、ICANN の要件ごとの GTLD 規制およびレジストラに必須になりました。 ほとんどの ccTLD も RDAP を採用していますが、WHOIS 専用サービスも動作しています。 https://data.iana.org/rdap/dns.json の IANA ブートストラップファイルでは、サポートされているすべての TLD の現在の RDAP サーバーマッピングを提供します。
ベストプラクティス
RDAP クエリを実装する際には、レートの制限を尊重するために適切なキャッシュレスポンスをキャッシュし、IANA ブートストラップをサーバーの検出に実装し、両方の成功したルックアップと 404 のレスポンスを可用性チェックに処理します。