RHEL 7.1でネットワークデバイス名をethXに変更する
目次
概要
Red Hat Enterprise Linux 6まではネットワークデバイス名として eth0, eth1, eth2, ・・・というネーミングが付与されていました。 バージョン7になってからは、この ethX というネーミングではなくenpXsX や enoX のように構成によって様々なネーミングが付与されるように変更されました。 実際一度設定するとあまり関係なかったりしますが、どうも馴染めないという場合は ethX のネーミングに変更することができます。 ネーミング以外でどのような影響があるのか正確に調査していませんが、設定方法について紹介します。
構成
想定環境
以下では2つのLANポートを持つサーバで設定作業を行っています。 1つ目のLANポートにのみLANケーブルが接続されている状態です。
サーバ構成
OSバージョン
Red Hat Enterprise Linux 7.1 x86_64
ソフトウェア・パッケージ一覧
特に追加パッケージは必要ありません。
環境構築
設定
GRUB 2のパラメータを変更
GRUB 2では設定ファイル(/boot/grub2/grub.cfg)を直接エディタで修正するのではなく、 一度パラメータファイル(/etc/default/grub)を修正し、そのパラメータファイルを読み込んで 設定ファイルに反映するような流れとなりました。 パラメータファイルを vi で開き、「GRUB_CMDLINE_LINUX」の値に追記します。
# cd /etc/default/ # vi grub
※赤字部分を追記※
GRUB_TIMEOUT=5
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel00/root rd.lvm.lv=rhel00/swap rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"
GRUB 2の設定ファイルへ変更を反映
修正したパラメータを読み込んで、GRUB 2の設定ファイルに変更後の設定を反映します。 -o オプションで GRUB 2の設定ファイルを指定します。
# grub2-mkconfig -o /boot/grub2/grub.cfg Generating grub configuration file ... Found linux image: /boot/vmlinuz-3.10.0-229.el7.x86_64 Found initrd image: /boot/initramfs-3.10.0-229.el7.x86_64.img Found linux image: /boot/vmlinuz-0-rescue-2bd61f2aff4447f3993f0e3f506c69f8 Found initrd image: /boot/initramfs-0-rescue-2bd61f2aff4447f3993f0e3f506c69f8.img done
Linuxを再起動
変更後のGRUB 2の設定が読み込まれるように、Linuxを再起動します。
# shutdown -r 0
ネットワークデバイス名の確認
Linuxの再起動が終わると、ネットワークデバイス名が昔ながらのethXのネーミングに 変更されてLinuxが起動してきます。以前設定していたIPアドレスやサブネットマスク、 デフォルトゲートウェイなどの設定はリセットされてしまいますので、再度設定する必要があります。 なお、以下の画面で eth1 の状態が「DOWN」と表示されているのは、LANケーブルを挿していないためです。
# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether bc:ee:7b:5f:e3:c1 brd ff:ff:ff:ff:ff:ff 3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 link/ether 00:1b:21:61:aa:56 brd ff:ff:ff:ff:ff:ff
IPアドレスとサブネットマスクの設定
eth0 にIPアドレスとサブネットマスクを設定します。
# ip addr add 192.168.0.104/255.255.255.0 dev eth0
IPアドレスとサブネットマスクの設定確認
eth0 にIPアドレスとサブネットマスクが設定されたことを確認します。 ネットワークデバイスが複数ある場合は、デバイス毎に(5),(6)の手順を繰り返してください。
# ip a 1: lo:mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether bc:ee:7b:5f:e3:c1 brd ff:ff:ff:ff:ff:ff inet 192.168.0.104/24 scope global eth0 ←IPアドレスとサブネットマスクが設定された valid_lft forever preferred_lft forever inet6 2408:210:9606:6100:beee:7bff:fe5f:e3c1/64 scope global dynamic valid_lft 14156sec preferred_lft 12356sec inet6 fe80::beee:7bff:fe5f:e3c1/64 scope link valid_lft forever preferred_lft forever 3: eth1: mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 link/ether 00:1b:21:61:aa:56 brd ff:ff:ff:ff:ff:ff
デフォルトゲートウェイとDNSサーバの設定
ネットワークデバイス eth0 の状態を確認すると、ゲートウェイとDNSの設定が行われていないことが 分かりますので、設定を追加します。
# nmcli device show eth0
GENERAL.デバイス: eth0
GENERAL.タイプ: ethernet
GENERAL.ハードウェアアドレス: BC:EE:7B:5F:E3:C1
GENERAL.MTU: 1500
GENERAL.状態: 100 (接続済み)
GENERAL.接続: eth0
GENERAL.CON パス: /org/freedesktop/NetworkManager/ActiveConnection/0
WIRED-PROPERTIES.キャリア: オン
IP4.アドレス[1]: 192.168.0.104/24
IP4.ゲートウェイ: ←設定されていない
IP6.アドレス[1]: 2408:210:9606:6100:beee:7bff:fe5f:e3c1/64
IP6.アドレス[2]: fe80::beee:7bff:fe5f:e3c1/64
IP6.ゲートウェイ: fe80::3ae0:8eff:fe19:5328
# nmcli connection modify eth0 ipv4.gateway 192.168.0.1 ipv4.dns 192.168.0.1
デフォルトゲートウェイとDNSサーバの設定確認
設定が終わったら、eth0 のデバイスを再起動し、変更を反映させます。 その後、再度 eth0 の状態を確認すると、ゲートウェイとDNSが設定されていることが分かります。
# nmcli connection down eth0 && nmcli connection up eth0 Connection 'eth0' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/0) 接続が正常にアクティベートされました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/1) # nmcli device show eth0 GENERAL.デバイス: eth0 GENERAL.タイプ: ethernet GENERAL.ハードウェアアドレス: BC:EE:7B:5F:E3:C1 GENERAL.MTU: 1500 GENERAL.状態: 100 (接続済み) GENERAL.接続: eth0 GENERAL.CON パス: /org/freedesktop/NetworkManager/ActiveConnection/1 WIRED-PROPERTIES.キャリア: オン IP4.アドレス[1]: 192.168.0.104/24 IP4.ゲートウェイ: 192.168.0.1 ←設定された IP4.DNS[1]: 192.168.0.1 ←設定された IP6.アドレス[1]: fe80::beee:7bff:fe5f:e3c1/64 IP6.ゲートウェイ:
設定ファイルの確認(念のため)
nmcliコマンドで設定したネットワークの設定が、設定ファイルに反映されていることを確認します。 必須ではありませんが、念のための作業です。
# cat /etc/sysconfig/network-scripts/ifcfg-eth0 HWADDR=BC:EE:7B:5F:E3:C1 TYPE=Ethernet BOOTPROTO=none IPADDR=192.168.0.104 ←IPアドレス PREFIX=24 ←サブネットマスク(24 = 255.255.255.0) GATEWAY=192.168.0.1 ←ゲートウェイ DNS1=192.168.0.1 ←DNSサーバ DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=eth0 UUID=e800e69a-da76-40e2-b29a-3ecd64e5bbd7 DEVICE=eth0 ←ネットワークデバイス名 ONBOOT=no # cat /etc/resolv.conf # Generated by NetworkManager nameserver 192.168.0.1 ←DNSサーバ