UNIX/Linuxの部屋 設定ファイル:/etc/resolv.conf

TOP UNIX/Linuxの部屋 UNIX/Linuxコマンド一覧 用語集 新版 由来/読み方辞書 環境変数マニュアル Cシェル変数 システム設定ファイル システムコール・ライブラリ ネットワークプログラミングの基礎知識 クラウドサービス徹底比較・徹底解説




設定ファイル /etc/resolv.conf DNS サーバの IP アドレスを指定するファイル このエントリーをはてなブックマークに追加

DNS サーバの IP アドレスを書いておくファイル。DNS サーバとは、ホスト名を IP アドレスに変換してくれるサーバである。

TCP/IP では、ホスト名に対応する IP アドレスがわからないと、そのホストに到達することができない。telnet やブラウザなどでホスト名を利用するときは、ユーザからは見えないが、毎回 DNS サーバにホスト名からIP アドレスへの変換を依頼し、その上で目的のホストとの通信を行っている。

DNS サーバへの問い合わせ自体も TCP/IP を使って実現されているので、DNS サーバだけは必ず IP アドレスを書いておかなくてはいけない。書式は
  • nameserver ネームサーバのIPアドレス
  • domain そのマシンが属するドメイン名
である。例えば /etc/resolv.conf が
nameserver 127.0.0.1
domain subnet.net.ac.jp
となっているとしよう。ここで
% telnet foo.bar.com
とすると、telnet コマンドは OS に foo.bar.com を IP アドレスに変換するよう依頼する。OS は /etc/resolv.conf に書かれた DNS サーバの IP アドレス (127.0.0.1) にアクセスし、foo.bar.com を IP アドレスに変換する。そして telnet コマンドは、受け取った IP アドレスに接続するわけである。ここで
% telnet foo
のようにドメイン名を省略したホスト名を指定すると、
  • foo というホスト名の変換を DNS サーバに依頼
  • 失敗したら foo.subnet.net.ac.jp で再度挑戦
となる。