Ubuntu Multipass VMのブリッジネットワーク設定手順
Multipass VMのブリッジネットワーク設定手順
Multipassで作成した仮想マシンをホストPCと同じネットワークに接続するための設定手順をまとめます。
以前、KVMとでめんんどうな手順を踏んで構築していましたが、かなり簡単にできるようになっていました(知らなかっただけかも)
これにより、VMはLAN上の他のデバイスからアクセス可能になります。
注意: この設定はホストPCのネットワーク設定を変更するため、ネット接続が途切れてしまうのでリモートPCに行う場合、3.ホストPCのネットワークを復旧させる手順は、物理PCに対して実施する必要があります!!
1. 既存のVMを削除して新しいVMを作成する
既存のVMのネットワーク設定を直接変更することはできないため、一度削除して再作成します。
# 既存のインスタンスを停止
multipass stop primary
# 既存のインスタンスを削除
multipass delete primary
# 完全に消去
multipass purge
# ブリッジネットワークで新しいインスタンスを作成
multipass launch --name ubuntu-vm --network [ホストのインターフェース名]
[ホストのインターフェース名]は、ip aコマンドで確認できるeno1、eth0、enp1s0f1などに置き換えてください。
メモ:
piroto@ubuntu-mouse:~$ multipass launch --memory 4G --disk 20G --cpus 2 --name ubuntu-vm --network enp1s0f1 Multipass needs to create a bridge to connect to enp1s0f1. This will temporarily disrupt connectivity on that interface.
2. ホストPCのブリッジインターフェース名を確認する
Multipassが自動で作成したブリッジのインターフェース名を確認します。
brctl show
出力にbr-enp1s0f1のようなbr-で始まるインターフェースが表示されるはずです。
3. ホストPCのネットワークを復旧させる
Multipassがブリッジを作成したことで、ホストPCが外部から見えなくなっています。作成されたブリッジにIPアドレスを割り当ててネットワークを復旧させます。
注意:物理PCに対して実行する(もしくは2系統の接続を事前に準備しておく必要あり)
ブリッジのIPアドレスをDHCPで設定する
# br-enp1s0f1は確認したブリッジ名に置き換える
sudo netplan set network.bridges.br-enp1s0f1.dhcp4=true
sudo netplan apply
ブリッジのIPアドレスを静的に設定する
# br-enp1s0f1は確認したブリッジ名に置き換える
sudo netplan set network.bridges.br-enp1s0f1.dhcp4=false
sudo netplan set network.bridges.br-enp1s0f1.addresses=[IPアドレス]/[サブネットマスク]
sudo netplan set network.bridges.br-enp1s0f1.routes=[ゲートウェイ]
sudo netplan apply
4. 設定ファイルのパーミッションを修正する
sudo netplan apply実行時に「ファイルがオープンすぎる」という警告が出た場合は、以下のコマンドでパーミッションを修正します。
sudo chmod 600 /etc/netplan/[設定ファイル名].yaml
5. 接続の確認
VMがホストと同じネットワークに接続されているか確認します。
multipass list
VMのIPv4アドレスがホストと同じネットワークセグメントになっていることを確認してください。
Macから、Multipass上の仮想マシンにSSH接続
SSH接続手順にもはまりポイントがいくつかあったので、別途メモする


