【macOS】ターミナルを使ってhostsファイルを編集する

hostファイルの中身

あるドメインのサーバーを変えることになり、変える前に変えた先での表示確認のため、hostsファイルを書き換えました。何度もやっていることなのですがその都度忘れて調べることになるので、ここらでメモしておくことに。

hostsファイルとは

hosts(ホスツ)とは、TCP/IPを利用するコンピュータにおけるホスト名のデータベースで、IPアドレスとホスト名の対応を記述したテキストファイルである。

hosts – Wikipedia

hostsファイルの編集方法

検証環境

  • macOS Ventura 13.6.1
  • Mac OS X 10.8.x Mountain Lion

作業手順

ターミナルを起動します。

sudo vi /etc/hosts
または
sudo vi /private/etc/hosts

上のコマンドを入力。次にパスワードの入力が求められるので、管理者のパスワードを入力。hostsファイルがviで開きます(sudo vi /private/etc/hostsはMac OS X 10.8.x Mountain Lionでは未確認)。

IPアドレスが192.0.2.0、ドメイン名がexample.comを追記する場合、hostsファイルの末尾にIPアドレスとドメイン名をスペースまたはタブで区切って入力します(viの使い方は調べてください)。

192.0.2.0 example.com

あとはhostsファイルを保存して、ブラウザでexample.comへアクセスして表示を確認。

変更を確認

サーバー変更だけの場合、ぱっと見なにも変わりがないはずなので、hostsファイルの変更が反映されてるのかわかりません。そのような場合は、以下のようにして確認します。

pingを打つ

ターミナルアプリを起動します。

ping -c 10 example.com

上記コマンドを入力すると応答が返ってきます(回数の指定はご自由に)。

PING example.com (192.0.2.0): 56 data bytes
64 bytes from 192.0.2.0: icmp_seq=0 ttl=50 time=18.724 ms
…

返ってきた情報がhostsファイルの変更後の情報であれば変更は成功しています。

なお、回数を指定しない場合延々と送り続け、結果が返ってきます。止める場合はcontrol+cキーを押してください。

Chromeで確認する

chrome://net-internals/?#dns

上のアドレスをChromeで開く。

Domain:にexample.comを入力して、Lookupを押す。表示された結果のIPアドレスがhostsファイルの変更後の情報であれば変更は成功しています。

タイトルなどを変更する

あまりおすすめしませんが、一時的にタイトルを変更して、hostsファイルの変更が反映されてるのかを確認する方法もあります。ただし、変更を確認できたら、元に戻すのを忘れないようにしてください。