それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

PC(マザーボード)を交換したらネットワーク認識しなくなった件/enp1s0は怖いよ 

enp1s0 とか enp2s1 とかネットワークデバイス接続順で名前が決まるからSSDまるごと別のPCに移動させたときに、ネットワークデバイスが全滅する。eth0 に戻したい。

ubuntuの載ったサーバー本体を交換しました。

昨日、HDDを古いサーバーから、新しいサーバーに持ち込んで、起動しました。

無事に起動するのですが、ネットワークが完全に死んでいました。Ubuntuでネットワークがつながらないという。事故が起きました。

原因は enp1s0/enp2s0f0とnetplan

いままで使っていた、サーバー機では、ネットワークカードは enp2s0f0 という名前でした。

しかし、SDD載せ替えた新しいサーバーでは、NICenp1s0という名前でした。

そして、ubuntu では netplan を使っています。netplan に enp2s0f0を書いていました。

/etc/netplan/50-cloud-init.yaml

# vim: tabstop=2 sw=2 nowrap expandtab  :
 network:
   version: 2
   renderer: networkd
   ethernets:
     enp2s0f0:
       dhcp4: false
       dhcp6: false
   vlans:
     enp2s0f0.10:
       addresses: []
       id: 10
       link: enp1s0
(以下略

nic の名前の変更が、ネットワーク設定を亡き者した。

enp2s0f0enp1s0 という名前の変更が、ネットワークにつながらない原因でした。これは怖いことです。

ネットワーク設定が eth0 と書かれいたら起こり得なかったことだと思います。現代では一貫性のある名前をつけるために、以前のネットワーク設定がロードされずネットワークにつながらないというトラブルが起きます。Ubuntuを使っていると、これから先だれでも一度は絶対に遭遇する。罠だと思います。

eth0 /eth1 なら起きなかった。

ubuntu 16くらいの従来どおり、eth0 という名前のネットワークデバイス名であれば、このようなことは起こりえません。最初に見つかったネットワークデバイスはいつでもeth0 なので。

enpXXXX のような名前は、PCIバイスの接続箇所の順番を示しているのですが。これがあるとネットワーク設定を使い回すことができず。思わぬトラブルをヒキコ推しました。

enpXXX を使わない。としたい。

安定して稼働させるために、enpXXXを使わないという選択肢もいいと思います。

Redhatは無効にしないでくださいと書いていましたが、それって結局不便だよね。って思った次第です。

たぶん他に困ったことになった人も多いと思う。いつでもDHCPでアドレスを取ってくるとは限らないので、怖い問題だと思う。

netplan でやると恒常的な変更にならない。

grubカーネルオプションを渡したら、永続化する

永続化する方法はこちら

参考資料