From systemd-networkd to NetworkManager
Ubuntu は Server 版では systemd-networkd が、Desktop 版では NetworkManager が使われる。つまり Ubuntu cloud-image を使う場合 systemd-networkd が基本となっている。
cloud-image から起動する際は cloud-init で初期化を行う。cloud-init NoCloud datasource の Networking Config Version 2 (netplan) で初期化するのが簡単。初期化後は cloud-init network 設定は /etc/netplan/
以下にインストールされる。
ここから Desktop 版相当の NetworkManager に切り替えていくことを考える。
cloud-image には NetworkManager が入っていないので、まずは networkd 管理のネットワークで NetworkManager
を package install する。本格的に GUI も欲しい場合は ubuntu-desktop-minimal
も package install するが、minimal といってもかなり大きいので、要注意。
NetworkManager がインストールされれば /etc/netplan/
の renderer を NetworkManager に変更して反映すれば切り替えができる。裏を返すと netplan の renderer は暗黙的に networkd
となっている。
network:
version: 2
# 以下の行を追加
renderer: NetworkManager
ethernets:
# (以下略)
反映は次のコマンドで行う。外部から ssh 接続して作業している場合、コネクションが切れることに注意。
netplan apply
NetworkManager のほうが netplan よりも様々な形態をサポートしているため、netplan に無理に詰め込まないほうが苦労が少ない。
Ubuntu は netplan を中心に考えると簡単。
Discussion