hostsファイル
Coddyの「ターミナルで学ぶネットワーク」コースのレッスン 6/47。
マシンがDNSに何かを問い合わせる前に、ディスク上のファイルを確認します:/etc/hosts。中を見てみましょう:
cat /etc/hosts各行には、アドレスと、そのアドレスに対応する1つ以上の名前が記載されています。必ず見つかる行は次のものです:
127.0.0.1 localhostこれが、ネットワークもDNSサーバーもまったく必要とせずにlocalhostが機能する理由です。答えはファイルの中にあるのです。
hostsファイルはDNSより優先されます。そこに書かれている内容が使用され、その名前についてDNSが参照されることは決してありません。そのため、作業中に実際のドメインをテストマシンに向けるのに本当に便利です。また、名前が見当違いの場所に解決されるときに、最初に確認すべき場所でもあります。
あなたのファイルには、IPv6用の行や、通常はマシン自身の名前用の行など、ほかの行も含まれているため、他の人のファイルとまったく同じ見た目になるとは限りません。
チャレンジ
中級localhost が何に解決されるかを、それを答えるファイルから直接確認してください。
localhost に言及している /etc/hosts の最初の行から、アドレスだけを出力してください。期待される出力は次のとおりです。
127.0.0.1ファイル全体を出力しないでください。hosts ファイルには、IPv6 の行やマシン自身の名前など、複数の行が含まれています。
自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ターミナルで学ぶネットワークのすべてのレッスン
自分で練習してみよう: Terminalプレイグラウンド