Conditional DNS forwarding is a DNS configuration mechanism that directs queries for specific domain names to designated DNS servers rather than using default resolvers, enabling organizations with multiple namespaces—such as internal domains, partner networks, and cloud zones—to resolve names through the authoritative servers that hold their data without duplicating zone information across systems. The technique operates by matching incoming query names against configured domain suffixes and forwarding only matching queries to their designated target servers, while unmatched queries follow normal resolution paths, making it essential for hybrid cloud environments and merged company infrastructures. Operational challenges include managing forwarding rules across multiple servers to prevent stale configurations, ensuring network reachability and firewall rules permit DNS traffic on port 53, and securing forwarded queries to prevent disclosure of internal domain names across untrusted networks.
条件付きDNS転送の仕組み
条件付き転送が設定されたDNSサーバーは、受信した各クエリ名をドメインルールのリストと照合します。その結果に基づいて、サーバーがクエリを転送するか、通常通り解決するかが決定されます。
- クエリの受信:クライアントは、設定済みのDNSサーバーに対して再帰クエリを送信します。例えば、パートナードメインや内部ドメイン内のホスト名に対するリクエストなどです。
- ドメインの照合:サーバーは、クエリされた名前を、設定された転送ドメインと比較し、最も具体的な一致するサフィックスを選択します。
- クエリの転送:ルールに一致した場合、サーバーはデフォルトのパスを使用する代わりに、そのドメインに指定されたDNSサーバーにクエリを送信します。
- デフォルトのパスを使用する:どのルールにも一致しない場合、サーバーはルートヒントまたは汎用フォワーダーを使用して、通常通り名前を解決します。
- 応答の返送:サーバーは応答をクライアントに中継し、レコードの有効期間(TTL)に応じてキャッシュする場合があります。
この手順では、障害時の動作については説明していません。指定されたサーバーが応答しない場合にデフォルトの解決にフォールバックするかどうかはサーバーによって異なり、その設定は信頼性とクエリがどこに公開されるかの両方に影響します。また、転送先はネットワーク経由で到達可能である必要があり、ルーティングおよびファイアウォールのルールでDNSトラフィックが許可されている必要があります。
条件付きDNS転送でよくある問題
あるルールが、廃止された、あるいは番号が変更されたサーバーを依然として指し続けている。そのドメインへのクエリはタイムアウトし、ユーザーからはアプリケーションの動作が遅い、あるいは動作しないという報告が寄せられる一方で、他のドメイン名は正常に解決される。
ルールは一部のDNSサーバーには追加されていますが、他のサーバーには追加されていません。クライアントが使用するリゾルバーによって、同じ名前でもあるサイトでは解決されるのに、別のサイトでは解決に失敗することがあります。
2台のサーバーが互いにドメインを転送し合うか、あるいはターゲットが送信元へ転送し返します。クエリはタイムアウトするまで行き来し続け、SERVFAIL応答が増えるにつれてリゾルバーの負荷が高まります。
広範なサフィックス・ルールとより限定的なサフィックス・ルールが異なるサーバーを指しており、管理者は誤った方が優先されると予想しています。その結果、サブドメインはゾーンを持たないサーバーに対して解決され、NXDOMAINが返されます。