Hosts ファイルとは?
etc/hosts” ファイルは、システムが IP アドレスとホストネームの内部マップを保持する場所です。これは、あなたのマシンのローカルに保存されているため、DNSサーバーを必要としません。これは、内部サーバーやネットワーク上の他のデバイスなど、一般的にIPアドレスの入力が必要なものを管理するのに最適な方法です。私は、Raspberry Pi のプロジェクトや、一般的に使われている KVM 仮想マシンを管理するために、いつもこの方法を使用しています。
Hosts ファイルをどのように使うか?
まず、hosts ファイルに何が書かれているかを見てみましょう。ターミナルに以下のコマンドを入力し、Enterキーを押します。
cat /etc/hosts
出力の中に、あなたのローカルマシンが自分自身を識別するための2つのIPアドレスが見つかります。ping localhost`コマンドを実行すると、これらのIPアドレスのうち1つが表示されるのがわかると思います。これはLinuxがhostsファイルにこの2つのエントリーを自動的に生成しているからです。さらにエントリーを追加したい場合は、ファイルの書式に従うだけで、すべて完了します。
Hosts ファイルの編集
hosts ファイルを編集するには、お好みのテキストエディターで開いてください。Vim, Nano, Gedit, Kate, あるいはあなたが一番好きなものを使うことができます。以下のようなフォーマットで内容が表示されるはずです。
ipアドレス ホスト名 他のホスト名 他のホスト名
つまり、IPアドレスが192.168.122.7のPi Holeサーバーがあれば、以下のようなフォーマットになりますね。
192.168.122.7 pihole.local
もちろん、名前をどうするかはあなた次第です。つまり、PingやsshなどのツールでPi Holeサーバにアクセスする場合、IPアドレスを入力する必要はありません。ターミナルに pihole.local
と入力するだけでよいのです。特に、サーバのホスト名を短くすることができれば、かなりの時間短縮になります。
また、".com”, “.net”, “.org “のアドレスを使用する必要がないことも重要です。単にpihole
と呼ぶこともでき、システムはそれを認識します。私は「正しい」方法を示すために.localアドレスを使用しましたが、それが唯一のものであれば、server
と呼ぶことができます。
192.168.122.202 linux-vm.local
192.168.122.202 linux-vm.local ``` とすると、ホスト名でその VM に ping できるので、探しているものを思い出すのがずっと簡単になります。IPアドレスではなく、ホスト名でpingを打っているのがわかると思いますが、それがコマンドの出力に表れています。システムはその IP とホスト名の内部マップを持っているので、その場所にスロットインするのは簡単なのです。
まとめ
お分かりのように、Linux で Hosts ファイルを編集する方法を学ぶことは、後々多くの時間を節約することができるので、有用なスキルになります。Windows の場合も、Hosts ファイルを編集して、上記と全く同じように使用することができます。