ワイルドカード DNS

プロトコル & 標準
存在しないサブドメインへのリクエストに一致するDNSレコード。
← 用語集に戻る

ワイルドカードDNSとは?

ワイルドカードDNSは、明示的なDNSレコードが定義されていないサブドメインへの問い合わせに、アスタリスク(*)で一致させるDNS設定です。*.example.comのようなワイルドカードレコードは、未定義のサブドメイン(blog.example.com、app.example.com、anything.example.com)に対する問い合わせをすべて捕捉し、指定した宛先へ解決します。

ワイルドカードDNSの仕組み

DNS Zone for example.com:

├── example.com A 192.0.2.1 (explicit)

├── www.example.com A 192.0.2.1 (explicit)

├── mail.example.com A 192.0.2.2 (explicit)

└── *.example.com A 192.0.2.10 (wildcard)

Query: random.example.com → 192.0.2.10 (matched by wildcard)

Query: www.example.com → 192.0.2.1 (explicit takes priority)

ワイルドカードレコードの構文

*.example.com.    3600    IN    A       192.0.2.10

*.example.com. 3600 IN CNAME catch-all.example.com.

*.example.com. 3600 IN MX 10 mail.example.com.

よくある用途

マルチテナントSaaSアプリケーション

*.myapp.com → Single server handles:

├── customer1.myapp.com

├── customer2.myapp.com

├── customername.myapp.com

└── (unlimited subdomains)

開発環境

ユーザー生成コンテンツ

ワイルドカードの優先順位

レコードtest.example.comへの問い合わせ
test.example.com (explicit)✓ 最初に一致
*.example.com (wildcard)明示的なレコードがない場合に一致

明示的なレコードは常にワイルドカードより優先されます。

制限事項

1. 1レベルにのみ一致: *.example.comはa.b.example.comには一致しない

2. 頂点には置けない: *.comは許可されない

3. セキュリティ上の考慮: 意図しないサブドメインまで捕捉する可能性がある

4. SSLの複雑さ: ワイルドカードSSL証明書が必要になる

DNS設定例

; Zone file

$ORIGIN example.com.

@ A 192.0.2.1 ; apex

www A 192.0.2.1 ; explicit www

* A 192.0.2.10 ; everything else

* MX 10 mail.example.com. ; wildcard mail

ベストプラクティス

1. 必要な場合に限定する: 本当に必要なときだけ使う

2. SSLと組み合わせる: ワイルドカード証明書を取得する

3. アプリケーションで処理する: サーバーがサブドメインを正しくルーティングできるようにする

4. 利用状況を監視する: 予期しないサブドメインへのアクセスを監視する

5. 明示的に上書きする: 既知のサブドメインには個別のレコードを作成する

ワイルドカードDNSを使うと、サブドメインごとに個別のDNSレコードを作らずに柔軟に処理できます。動的アプリケーションやマルチテナントプラットフォームに適しています。

この知識を実践する

DomScan の API を使用してドメインの可用性、状態などを確認します。