![](https://mekou.com/linux-magazine/wp-content/uploads/2018/08/96533315-vector-ethernet-connector-with-cable-icon-214x214.jpg)
少し前までは、NIC((Network Interface Card)のデバイス名は eth0, eth1, .. と決まっていました。
しかし、CentOS7, Ubuntu 16.04(udev のバージョン197) よりNICのデバイス名の命名ルールは、名前からどのようなデバイスなのか予測可能なデバイス名が自動で割り振られるようになりました。
命名ルールは以下のようになっています。
—————————
頭の2文字
Ethernet : en
Wireless LAN : wl
Wireless WAN : ww
—————————
3文字目
オンボード : o
ホットプラグ : s
PCI or USB デバイス : p
—————————
しかし製品のマニュアルなどでネットワーク設定を紹介する際、デバイス名が決まってないと困ったり、既存のプログラムを流用する際に、コード内でデバイス名が eth でコーディングされている場合もあります。
eth に戻す場合は、udev の設定ファイルを変更してあげる必要があります。
まず ethtool コマンドで NICの bus-info を知る必要があります。
ethtool はデフォルでインストールされてないのでインストールします。
$ sudo apt install ethtool
$ ethtool -i enp0s3 (変更したい任意の NIC名)
:
bus-info: 0000:00:03.0
:
/etc/udev/rules.d/70-persistent-net.rules ファイルを新規に作成して、以下のように記述してマシンを再起動すれば eth に変更されます。
$ sudo nano /etc/udev/rules.d/70-persistent-net.rules
SUBSYSTEM=="net", ACTION=="add", KERNEL=="enp*", SUBSYSTEMS=="pci", KERNELS=="0000:00:03.0", NAME="eth0"
既存の名前 bus-info