ICT

IPアドレスとホスト名(FQDN)の対応付けを書く hosts ファイル

投稿日:2018年12月24日 更新日:

現在使われているパソコン(以下、コンピューターと書きます)には、hosts というファイルが1つ存在しています。

1. ホスト名に対応するIPアドレスを取得するためのDNS

例えば、あるコンピューター上のウェブブラウザで https://www.yahoo.co.jp/ という URL にアクセスするとしましょう。この時、そのコンピューターでは以下の処理が行われます。

  1. DNS(名前解決)という仕組みを使って、www.yahoo.co.jp というホスト名 (FQDN) を持つサーバーの IPアドレスを調べます。
  2. IPアドレスが取得できました。
  3. https というプロトコルで そのIPアドレスのサーバーにアクセスします。

1 と 2 の処理は、https 以外の ftpsmtp(メール送信) といったプロトコルでも同じです。まず、アクセス先であるサーバーの IPアドレスが分からないことには、どのプロトコルであろうとアクセスすることができないのです。

そして、この「ホスト名に対応するIPアドレスを取得するシステム」が DNS (Domain Name System) です。

www の部分のみを「ホスト名」と呼ぶこともあります。この www と、ドメイン名である yahoo.co.jp をあわせたものを FQDN (Fully Qualified Domain) と呼びます。しかし、FQDN のことをホスト名と呼ぶことも多いです。

コンピューターのネットワーク設定の中には、「DNSサーバー」という項目があり、そこにセットしたサーバーに「○○○というホスト名に対応するサーバーのIPアドレスを教えて下さい」と尋ねることになっています。

DNSサーバーの設定
DNSサーバーの設定

しかし、これでは不便な時もあります。

例えば、独自ドメインを割り当てて使っているサーバーを引っ越す場合などに、ホスト名とIPアドレスの対応付けを自分で切り替えたい状況が発生します(あくまで、ローカル環境内での話しです)。

2. hosts ファイルとは?

このような時に使えるのが、hosts ファイルです。

このファイルには、ホスト名とIPアドレスの対応付けを書くのですが、コンピューターは DNS よりもこちらのファイルの内容を優先してくれるのです。

先程の https://www.yahoo.co.jp/ という URL にアクセスする例でいうと、以下の処理に変更されます。

  1. hostsファイルの中から、www.yahoo.co.jp というホスト名 (FQDN) に対応する IPアドレスを調べます。
  2. IPアドレスが取得できました。
  3. https というプロトコルで そのIPアドレスのサーバーにアクセスします。

と、これだけのことなんですが、いざという時に知っていると便利です。

3. hostsファイルの場所

hostsファイルは以下の場所にあります。

 
OS hostsファイルの場所
Windows 10 / 8 / 7 / Vista / XP C:\WINDOWS\system32\drivers\etc\hosts
Mac OS X / Linux /etc/hosts/

管理者権限がないと編集できません。

Windows 10 の場合、以下のようにファイルを開きます。

(1) スタートメニューを開き、”メモ帳” と入力します。

(2) メモ帳が現れるので、右クリックして [管理者として実行] を選択します。

メモ帳がを開く
メモ帳がを開く

(3) [ファイル]メニュー – [開く] を選択します。

[ファイル]メニュー - [開く] を選択します
[ファイル]メニュー – [開く] を選択します

(4) ファイルを開くためのウィンドウが表示されるので、hostsファイルを指定して開きます。

  • C:\WINDOWS\system32\drivers\etc を開きます。
  • [すべてのファイル(.)] を選択します。
  • hostsファイルを選択します。
  • [開く]ボタンをクリックします。

4. hostsファイルの記述

hostsファイルにおける、「ホスト名とIPアドレスの対応付け」は、1行毎に「IPアドレス」、「スペース」、「ホスト名」という順番で記述します。

IPアドレス ホスト名

実際には、こんな感じになります。

183.181.xxx.10  foo.example.com
183.181.xxx.11  bar.example.com

※ ‘xxx’ のところも、実際は数字になります。

PowerShell やコマンドプロンプトで、ping ホスト名 を実行すると、どんな IPアドレスが対応付けられているか確認することができます。

ping でIPアドレスをチェックする
ping でIPアドレスをチェックする

5. おわりに

本ページには書いていない hostsファイルの活用方法を、特定のウェブサイトを見られなくする方法(ペアレンタルコントロール) で紹介しています。こちらも是非ご覧ください。

📂-ICT

執筆者:labo


comment

メールアドレスが公開されることはありません。

関連記事

ICTリテラシー

電子メール

目次1. はじめに2. 電子メールとは?3. 電子メールの仕組み4. 電子メールを利用する上でのマナー5. 電子メールを利用する上で注意すること(セキュリティ)6. 誤送信対策方法1 伝えたいメッセー …

no image

情報の信憑性を調査する

目次1. はじめに2. 情報の信憑性をチェックするには?1. 二次情報の場合2. 一次情報の探し方3. 一次情報の信憑性をチェックするには?3. それでも分からない場合4. 日頃から気を付けること5. …

Windows

シャットダウンを実行してから、実際に電源がオフになるまでにはタイムラグがあります

Windows 10 においてシャットダウンを実行してから、本当にパソコンの電源が切れるまでには少し時間が掛かります。 デスクトップパソコンの場合、電源がオフになる前にコンセントを抜いてしまうと、シス …

KeePass の「グローバル自動入力」で使う Ctrl + Alt + A を押した時に、必ずIMEの入力モードを半角英数にする方法

当ウェブサイト内には、パスワード管理アプリケーションである KeePass について紹介したページがあります。 有料のパスワード管理アプリケーションで有名なものもいくつかありますが、特に Window …

プライバシー

プライバシーを守りつつインターネットを利用する方法(設定編)

インターネットを利用するときに利用するブラウザや、各種サービスにおいて、プライバシーを守るための設定方法を紹介します。 目次1. ブラウザの設定を見直す1-1. サードパーティ・クッキーを無効にする1 …