CentOS 6やRHEL 6までやそれら以外の多くのディストリビューションでは、ネットワークインターフェースに「eth0」や「eth1」といった名前が付けられています。
それに対して、CentOS 7、RHEL 7からは、ネットワークインターフェースのデフォルトの命名ルールとして、「Predictable Network Interface Names」が採用されました。
これにより、従来の「eth0」や「eth1」の名前を目にすることが減っていくでしょう。
Predictable Network Interface Namesは、systemdが提供する命名ルールの仕組みです。イーサネットデバイスは「en」から始まり、無線LANカードは「wl」から始まります。
名前の例 | 条件 |
---|---|
eno1 | ファームウェアやBIOSが提供してくれたハードウェア構成情報があり、オンボードNICだと判断できている場合の命名ルール |
ens1 | ファームウェアやBIOSが提供してくれたハードウェア構成情報があり、PCI Expressスロット番号が判断できている場合の命名ルール |
enp2s0 | ファームウェアやBIOSが提供してくれたハードウェア構成情報がなく、物理的なロケーションしか分からない場合の命名ルール |
enx78e7d1ea46da | ネットワークインターフェースのMACアドレスに基づく命名ルール |
eth0 | ファームウェアやBIOSが提供してくれたハードウェア構成情報がなく、ロケーションが特定できない場合の命名ルール |
命名ルールを変更するには
Predictable Network Interface Namesを無効にした場合は、カーネルオプションで「net.ifnames=0」を指定して再起動します。また、biosdevname※を無効にしたい場合は、カーネルオプションで「biosdevname=0」を指定して再起動します。
Predictable Network Interface Namesとbiosdevnameの両方を無効化すると、RHEL 6までのネットワークインターフェースと同じ、eth0やeth1などの命名ルールに戻せます。
※ biosdevnameはRHEL 6の頃からDell社のサーバーに限って適用されていた命名ルールです。