過去問ドリル

LinuCレベル1 ネットワークの基礎 問25

ネットワークの基礎/クライアント側のDNS設定

/etc/nsswitch.confの設定順に従い、/etc/hostsとDNSの両方を考慮して名前解決した結果を確認できるコマンドとして適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル1の出題範囲「ネットワークの基礎」に対応。実際の試験問題ではありません)

正解:A

解説

getentはNSS(Name Service Switch)経由でデータベースを引くコマンドで、「getent hosts 名前」とすると/etc/nsswitch.confのhosts行の順序(例: files dns)どおりに/etc/hostsやDNSを参照した結果を表示します。つまり、アプリケーションが実際に得る名前解決の結果を確認できます。一方、dig・host・nslookupはDNSサーバーへ直接問い合わせるため、/etc/hostsの記述は反映されません。

選択肢ごとの解説

  • A正しい。getent hostsはnsswitch.confの順序に従うので、/etc/hostsの記述も結果に反映されます。
  • B誤り。dig +searchはresolv.confのsearchドメインを補いますが、問い合わせ先はDNSだけで/etc/hostsは見ません。
  • C誤り。host -vはDNSへの問い合わせ結果を詳しく表示するだけで、/etc/hostsは参照しません。
  • D誤り。nslookupもDNSサーバーへ直接問い合わせるコマンドで、nsswitch.confの順序には従いません。
LinuCレベル1の問題を演習モードで解く