DNS の Server Failure/SERVFAIL をフォワーダー、53番ポート、キャッシュから切り分ける
SERVFAIL はリゾルバーが問い合わせを完了できなかった状態です。権威情報、転送、TCP/UDP 53、DNSSEC、タイムアウト、キャッシュを確認します。
先に結論
SERVFAIL はリゾルバーが問い合わせを完了できなかった状態です。このケースでは、まず「権威ゾーンの状態」と「フォワーダー到達性とタイムアウト」を確認し、その後「TCP/UDP 53 ファイアウォールポリシー」を基準に修正の要否を判断します。
最初に切り分ける範囲
このネットワーク/セキュリティ境界の事象では、まず「権威ゾーンの状態」と「フォワーダー到達性とタイムアウト」で障害境界を決め、その後「TCP/UDP 53」へ進みます。本番設定を変更する前に、現状、発生時刻、正常な比較対象を記録します。
依存関係に沿った確認順序
| 確認項目 | 確認する理由 | 推奨アクション |
|---|---|---|
| 01 · 権威ゾーンの状態 | 権威ゾーンの状態 を、設定値だけで判断せず、ログ、カウンター、状態情報で実経路上から確認します。 | 権威ゾーンの状態 の現在値、証跡元、時刻を記録します。変更が必要な場合は一度に一条件だけ変更し、切り戻し用に元の設定を保持します。 |
| 02 · フォワーダー到達性とタイムアウト | フォワーダー到達性とタイムアウト を、設定値だけで判断せず、ログ、カウンター、状態情報で実経路上から確認します。 | フォワーダー到達性とタイムアウト を読み取り中心で確認し結果を保存します。基準との差がある場合は、障害時刻と直近変更との関係を確認してから修正します。 |
| 03 · TCP/UDP 53 ファイアウォールポリシー | TCP/UDP 53 ファイアウォールポリシー を、設定値だけで判断せず、ログ、カウンター、状態情報で実経路上から確認します。 | TCP/UDP 53 ファイアウォールポリシー を正常系、ログ時系列、実際の業務経路と比較し、原因であることを確認してから本番設定を変更します。 |
| 04 · 再帰とルートヒント設定 | 再帰とルートヒント設定 の現在値、関連ログ、直近の変更を確認し、障害発生時刻と突き合わせて変更要否を判断します。 | 再帰とルートヒント設定 の現在値、証跡元、時刻を記録します。変更が必要な場合は一度に一条件だけ変更し、切り戻し用に元の設定を保持します。 |
| 05 · DNSSEC/EDNS 互換性 | DNSSEC/EDNS 互換性 の現在値、関連ログ、直近の変更を確認し、障害発生時刻と突き合わせて変更要否を判断します。 | DNSSEC/EDNS 互換性 を読み取り中心で確認し結果を保存します。基準との差がある場合は、障害時刻と直近変更との関係を確認してから修正します。 |
| 06 · ネガティブキャッシュとサーバーキャッシュ | ネガティブキャッシュとサーバーキャッシュ の現在値、関連ログ、直近の変更を確認し、障害発生時刻と突き合わせて変更要否を判断します。 | ネガティブキャッシュとサーバーキャッシュ を正常系、ログ時系列、実際の業務経路と比較し、原因であることを確認してから本番設定を変更します。 |
読み取り確認の例
nslookup example.com 192.0.2.53
Resolve-DnsName example.com -Server 192.0.2.53根拠を確認してから変更する
- まず読み取り中心で証跡を取得し、設定変更前に「権威ゾーンの状態」と「フォワーダー到達性とタイムアウト」を確認します。
- 最初の確認が正常なら「TCP/UDP 53 ファイアウォールポリシー」と「再帰とルートヒント設定」へ進み、障害時刻と結び付く証跡を残します。
- 証跡が症状を説明できる場合に限って設定を変更します。「DNSSEC/EDNS 互換性」を変更する前に元の値と切り戻し条件を定義します。
- 「ネガティブキャッシュとサーバーキャッシュ」は限定範囲で検証してから、本番ユーザーまたは本番トラフィックへ展開します。
復旧確認と切り戻し
- ユーザーまたはアプリケーションの一連の業務動作を確認し、「権威ゾーンの状態」単独の状態だけで完了としません。
- 変更後に「DNSSEC/EDNS 互換性」と「ネガティブキャッシュとサーバーキャッシュ」を再確認し、新たな迂回、権限拡大、二次障害がないことを確認します。
- 「権威ゾーンの状態」から「ネガティブキャッシュとサーバーキャッシュ」までの証跡、変更前後の設定、業務確認結果、切り戻し点を保存します。
よくある誤判断
- 「権威ゾーンの状態」と「フォワーダー到達性とタイムアウト」を同時に変更し、どちらが原因だったか追跡できなくすること。
- 「TCP/UDP 53」が正常というだけで、「再帰とルートヒント設定」を含む業務経路全体も正常と判断すること。
- 「DNSSEC/EDNS」または「ネガティブキャッシュとサーバーキャッシュ」の一時例外を、責任者・期限・切り戻し記録なしで本番に残すこと。
関連する確認事項
「DNS の Server Failure/SERVFAIL をフォワーダー、53番ポート、キャッシュから切り分ける」はどこから確認すべきですか?
まず「権威ゾーンの状態」と「フォワーダー到達性とタイムアウト」を確認します。本番状態を変えずに最初の切り分け境界を作れます。
最初の層が正常な場合、次に何を確認しますか?
次に「TCP/UDP 53 ファイアウォールポリシー」と「再帰とルートヒント設定」を確認し、障害時刻および実際のユーザー/アプリ経路と突き合わせます。
変更後に何を残すべきですか?
「DNSSEC/EDNS 互換性」と「ネガティブキャッシュとサーバーキャッシュ」の証跡に加え、元の設定、検証結果、観察記録、切り戻し点を保存します。
