手軽に仮想マシンが作れるmultipassが便利で重宝しています。
multipassでは、multipass ls
コマンドを実行すると、現在実行している仮想マシンの一覧を見ることができます。そして、その際に仮想マシンに割り当てられているIPアドレスも確認できます。
% multipass ls
Name State IPv4 Image
hogehoge Running 192.168.64.10 Ubuntu 20.04 LTS
fugafauga Stopped -- Ubuntu 20.04 LTS
docker Stopped -- Ubuntu 20.04 LTS
それで、よく使う仮想マシンは、IPアドレスも覚えてしまっても良いのですが、何かしらの原因でその仮想マシンを壊して、新規で別の仮想マシン作って、そのマシンに役割を引き継がせたい場合もありますよね。その場合、IPアドレスを直で指定していると不便です。そこで、IPアドレスに別名をつけて管理しています。
例えば、自分のマシン内でメモ帳代わりにしているWIKIとか、いろいろなWebアプリとか・・・機能ごとに適当なローカルドメインをつけて使っています。
/etc/hostsファイルに別名を記述する
それで、仮想マシンに割り振られているIPアドレスに名前をつける方法ですが、/etc/hosts
ファイルに名前を記述します。ターミナルでsudo nano /etc/hosts
などのコマンドを実行して、ファイルを編集しましょう。sudoが必須です。
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
# Multipassの仮想マシンに名前をつける
192.168.64.10 wiki.example.com
192.168.64.11 keiri.example.com
192.168.64.12 hoge.example.com
上記のように、IPアドレス 名前
のように書いておくだけで、ブラウザなどでwiki.example.com
にアクセスすることで、仮想マシンにアクセスできます。(もちろん、仮想マシンでWebサーバーなど起動しておく必要ありますが。。。)
***.localの名前は使わない
ただし、***.local
の名前は使わないようにします。以前は、wiki.local
とかkeiri.local
などの適当な***.local
という適当なアドレスをつけて使っていました。
しかし、これがもの凄く遅いんです。***.local
のアドレスはAppleのBonjourサービスによって、外部に問い合わせをしてしまうようです。せっかくローカルPCに仮想マシン建てているので、.localアドレス以外の適当なアドレスに割り当てると良いでしょう。
まとめ
機能ごとに覚えやすい名前をつけておくと、PCを乗り換えたり、仮想マシンの割当を変更した時にも便利です。