サーバのネットワーク・デバイス名を変更
サーバのネットワーク・インターフェイス名を変更する。udev を使用する方法と、netplan を使用する方法があるが、netplan での設定がオススメ。
目的
Ubuntu サーバのネットワーク・デバイス(NIC)名は、ルールに従って名前がつけられていますが、パット見ただけではどれがどこにつながっているかわかりません。特に USB イーサネット・アダプタだと余計にです。wlx984827d17bdd って一体何?
そこでネットワーク・デバイスの名前を分かりやすく変更したい。もちろん、サーバを再起動しても名前が変わってしまっては困ります。
udev を使用する方法
よく見かける気がするのは、udev
のルール設定を使用する方法です。
/etc/udev/rules.d/99-nic.rules
に、ネットワーク・デバイスの MAC アドレス(Ethernet アドレス)と名前を次のように設定します。
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="xx:xx:xx:xx:xx:xx", ATTR{type}=="1", NAME="wan0"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="xx:xx:xx:xx:xx:xx", ATTR{type}=="1", NAME="lan0"
ただし知らない人が見たら、ネットワークの設定とは異なるところにルールが置かれるので、どこで設定されるか戸惑うかもしれません。
また、netplan
と併用すると、設定ファイルには変更後のデバイス名を使用するので、設定ファイルの上書き機能が働きません。そのためインストール時に作成される設定ファイルのデバイス名も変更を忘れて、何故か DHCP でアドレスが割り振られて悩むことになります。
netplan を使用する方法
オススメは、netplan
を使用する方法です。最近ask ubuntuでnetplan
で指定する方法を知りました。
この方法ならば、どこで名称の変更が設定しているんだ?という謎も、上書きされない問題もありません。
network:
version: 2
renderer: networkd
ethernets:
enp1s0:
match:
macaddress: xx:xx:xx:xx:xx:xx
set-name: lan0
#
具体的には、netplan
の設定ファイルに、設定したい名称をset-name
で指定するだけです。また同時に、MAC アドレスをmatch
以下に設定します。
システムが名称を指定した後なので改めて MAC アドレスの指定は不要に思いますが、このmatch
がないとエラーになります。