Macでhostsファイルを編集して設定後に確認をする方法をメモっておきます。確認をしたのはmacOS Catalinaのみですが、基本的なやり方はバージョンが違っても同じだと思います。hostsファイルっていったいなに?という方はこの記事 がわかりやすかったです。
macOS Catalinaのhostsファイルの場所
/private/etc
ディレクトリにあります。/etc
が/private/etc
のシンボリックリンクになっているので/etc
ディレクトリでも同じです。
❯ cd /private/etc
hostsファイルの編集
hostsファイルを編集するには管理者権限が必要なのでsudo
をつけてvimやnanoでファイルを編集します。
❯ sudo vim hosts
hostsファイルの記述方法
<IPアドレス> <ホスト名>
IPアドレスとホスト名の間にはスペースかタブを記述します。たとえば、以下の記述でrriverblog.local
で127.0.0.1
にアクセスできるようになります。
127.0.0.1 rriverblog.local
設定後の確認方法
ping
コマンドで設定が確認できます。設定が反映されていない場合は以下のように表示されてしまいます。
❯ ping rriverblog.local
ping: cannot resolve rriverblog.local: Unknown host
設定ができていると以下のように表示されます。
❯ ping rriverblog.local
PING rriverblog.local (127.0.0.1): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
ブラウザで設定したホストにアクセスしてもいいですが、エラーが出てこないのでping
で確認したほうがわかりやすいです。ちなみにnslookup
やdig
コマンドだとhostsファイルを参照しない ようなので要注意です。
DNSキャッシュをクリア/フラッシュする方法
hostsに記述したものはシステムのDNSより先に読み込まれるはずなので、たぶん意味がないと思うんですが…。hostsの変更が反映されない時のために、念のためDSNキャッシュをクリアする方法をメモっておきます。
DNSキャッシュをクリアする方法
sudo killall -HUP mDNSResponder
キャッシュをフラッシュする方法
sudo dscacheutil -flushcache
上述したDNSキャッシュのクリア方法はYosemite以降 で使えるようです。dscacheutil
はYosemiteより前のMac OSで使えたようです。
さいごにひとこと
ウェブ制作用にローカル環境を構築しているとちょくちょく出てくるhostsファイルですが、たまにしか触らないのでファイルの場所とか忘れちゃうんですよね。ということで、macOS Catalinaでhostsファイルを編集して設定を確認する方法でした!
2020年2月17日に公開され、2020年2月18日に更新された記事です。
About the author
「明日のウェブ制作に役立つアイディア」をテーマにこのブログを書いています。アメリカの大学を卒業後、ボストン近郊のウェブ制作会社に勤務。帰国後、東京のウェブ制作会社に勤務した後、ウェブ担当者として日英バイリンガルのサイト運営に携わる。詳しくはこちら。
ウェブ制作・ディレクション、ビデオを含むコンテンツ制作のお手伝い、執筆・翻訳のご依頼など、お気軽にご相談ください。いずれも日本語と英語で対応可能です。まずは、Mastodon @rriver@vivaldi.net 、Twitter @rriver 、またはFacebook までご連絡ください。