RDAPとは?
RDAP(Registration Data Access Protocol)は、ドメイン名登録データにアクセスするための、現代的でIETF標準化済みのプロトコルです。WHOISの後継として開発されたRDAPは、構造化された機械可読なJSON形式のレスポンスを提供するため、開発者がドメイン検索機能をアプリケーションに統合しやすくなります。
開発者にとってRDAPが重要な理由
WHOISデータを解析しようとしたことがあるなら、その大変さをご存じでしょう。レジストラごとにレスポンスの形式が異なり、フィールド名にも一貫性がなく、役立つ情報を抽出するには複雑な正規表現パターンが必要な、構造化されていないプレーンテキストが返されます。RDAPは、すべてのRDAP準拠サーバーで一貫して機能する標準化されたJSONスキーマによって、これらの問題を解決します。
主な技術的利点
構造化されたJSONレスポンス: RDAPのレスポンスは、RFC 9083で定義された標準化JSONデータモデルを使用します。これによりクライアントが解析するための構造が統一されますが、サービスはアクセスポリシーに応じてフィールドを省略または編集して削除する場合があります。 RESTfulアーキテクチャ: RDAPは標準的なHTTPメソッドとステータスコードを使用します。GETリクエストは、サーバーが一致するオブジェクトを見つけた場合にドメイン情報を返します。404レスポンスは、クエリされたオブジェクトがそのサービスで見つからなかったことを意味しますが、それだけでドメインを登録できることを証明するものではありません。 デフォルトでHTTPS: データをポート43でプレーンテキスト送信するWHOISとは異なり、RDAPはHTTPSを使用し、アプリケーションとRDAPサーバー間の暗号化通信を確保します。 国際化サポート: RDAPはIDN(国際化ドメイン名)とUnicode文字を適切に処理します。これはグローバルアプリケーションに不可欠です。RDAPの仕組み
RDAPを通じてドメインをクエリすると、処理は次の手順で進みます。
1. ブートストラップ検出: クライアントがIANA RDAP Bootstrapレジストリにクエリを送り、TLDの権威RDAPサーバーを特定します
2. HTTPリクエスト: RDAPサーバーのURL(例: https://rdap.verisign.com/com/v1/domain/example.com)にGETリクエストを送信します
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サーバーが一致するオブジェクトを見つけなかったことを意味します。それだけでドメインを登録できることを証明するものではありません
- 豊富なメタデータ: 登録日、失効日、ステータスコードにアクセスできます
- 一貫した解析: 1つのコードベースですべてのTLDに対応できます
RDAPの導入状況
gTLDについて、ICANNは2025年1月28日にRDAPが登録情報の決定的な情報源になったと述べています。また、gTLDレジストリとレジストラは、.com、.name、.postの例外を除き、WHOISサービスの提供を一般的には求められなくなりました。ccTLDのポリシーとRDAPの導入状況はさまざまです。https://data.iana.org/rdap/dns.jsonのIANA Bootstrapファイルには、サポートされているすべてのTLDに対応する最新のRDAPサーバーマッピングが記載されています。
ベストプラクティス
RDAPクエリを実装する際は、レート制限を尊重するためにレスポンスを適切にキャッシュし、サーバー検出のためにIANA bootstrapを実装し、未検出、リダイレクト、ポリシー関連のエラーレスポンスを個別に扱ってください。未検出レスポンスはクエリされたサービスに関する証拠であり、登録可能性の証明ではありません。