ワイルドカード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)
##開発環境
- 任意のサブドメインは、セットアップなしで動作します
- 特徴の速いテスト
- 動的プレビュー環境
##ユーザー生成コンテンツ
- username.platform.comの特長
- projectname.service.comの特長
- カスタムブランドのサブドメイン
ワイルドカード優先ルール
| レコード | test.example.comのクエリ |
|---|---|
| test.example.com (ライセンス) | ✓ 最初にマッチ |
| ※.example.com(ワイルドカード) | 明示的でないと一致 |
常にワイルドカードを優先的に記録します。
制限事項
1. 1つのレベルにのみマッチ: ※.example.comはa.b.example.comと一致しません
2. apexではできません。 ※.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. Sparingly使用: 本当に必要なときだけ
2. SSL とのCombine: ワイルドカード証明書を入手
3. 適用処理: サーバーはサブドメインを正しくルートしなければなりません
4. モニター使用: 予期しないサブドメインアクセスを見る
5. 明示的なオーバーライド: 既知のサブドメインの特定のレコードを作成する
ワイルドカードDNSは、各サブドメインの個々のDNSレコードを必要としない柔軟なサブドメイン処理を可能にし、動的アプリケーションやマルチテナントプラットフォームに最適です。