Red Hat Training

A Red Hat training course is available for RHEL 8

1.6. udev ルールを使用したユーザー定義のネットワークインターフェイス名の割り当て

udev デバイスマネージャーは、インターフェイス名をカスタマイズするための一連のルールをサポートしています。

手順

  1. すべてのネットワークインターフェイスとその MAC アドレスを表示します。

    # ip link list
    
    enp6s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
        link/ether b4:96:91:14:ae:58 brd ff:ff:ff:ff:ff:ff
    enp6s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
        link/ether b4:96:91:14:ae:5a brd ff:ff:ff:ff:ff:ff
    enp4s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
        link/ether 00:90:fa:6a:7d:90 brd ff:ff:ff:ff:ff:ff
  2. 次のコンテンツでファイル /etc/udev/rules.d/70-custom-ifnames.rules を作成します。

    SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="b4:96:91:14:ae:58",ATTR{type}=="1",NAME="provider0"
    SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="b4:96:91:14:ae:5a",ATTR{type}=="1",NAME="provider1"
    SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="00:90:fa:6a:7d:90",ATTR{type}=="1",NAME="dmz"

    これらのルールはネットワークインターフェイスの MAC アドレスと一致し、NAME プロパティーで指定された名前に変更します。これらの例では、ATTR{type} パラメーター値 1 は、インターフェイスがイーサネットタイプであることを定義しています。

検証

  1. システムを再起動します。

    # reboot
  2. 各 MAC アドレスのインターフェイス名が、ルールファイルの NAME パラメーターで設定した値と一致することを確認します。

    # ip link show
    
    provider0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
        link/ether b4:96:91:14:ae:58 brd ff:ff:ff:ff:ff:ff
       altname enp6s0f0
    provider1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
        link/ether b4:96:91:14:ae:5a brd ff:ff:ff:ff:ff:ff
        altname enp6s0f1
    dmz: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
        link/ether 00:90:fa:6a:7d:90 brd ff:ff:ff:ff:ff:ff
        altname enp4s0f0

関連情報

  • udev(7) man ページ
  • udevadm(8) man page
  • /usr/src/kernels/<kernel_version>/include/uapi/linux/if_arp.h は、kernel-doc パッケージによって提供されます