Ubuntu18.04のネットワークイーサネットの名前を変更する方法(enp?をeth0に変更)

JS · 16 Apr 2019

Ubuntuの16.04 LTSの一部のバージョンまでのイーサネットの名前がeth0でした。 しかし、ネットワーク名が固定されている場合、重大なセキュリティ上の問題が発生する可能性があるため、ハードウェアデバイスに応じて流動的に名前が変更されるように変わったようです。 (予測可能なネットワークインタフェース名参考)

次のコマンドを入力すると、自分のイーサネット名前を見ることができます。

$ ifconfig
enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.8  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::ce69:c1da:bfd5:f899  prefixlen 64  scopeid 0x20<link>
        ether d0:50:99:72:73:10  txqueuelen 1000  (Ethernet)
        RX packets 34954  bytes 32641284 (32.6 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 24282  bytes 3283094 (3.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 20  memory 0xf3100000-f3120000  

もしいくつかのプログラムで、ネットワーク名を eth0ハードコーディングして実装した場合はenp??などのイーサネットでは動作しない可能性があります。 このような場合、eth0に変更すると、プログラムが動作することができます。 この記事では、イーサネットの名前を eth0に変更する方法について説明します。

eth0に変更する方法(Ubuntu18.04)

下のパスに新しいruleファイルを作成します。

$ sudo vim /etc/udev/rules.d/70-persistent-net.rules

以下の内容をファイルに入力します。ここで、 addressは、上記のifconfigで見つかった自分のMACアドレスを入れてNAMEは、変更したい名前を入れています。 私の場合、MACアドレスは、 ether d0:50:99:72:73:10であり、変更したい名前はeth0です

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:yy:xx:yy:xx:yy", NAME="eth0"

今grub設定ファイルを変更する必要があります。

$ sudo vim /etc/default/grub

以下のオプションは、何も設定にならなくのに

GRUB_CMDLINE_LINUX=""

以下のように変更します。

GRUB_CMDLINE_LINUX="net.ifnames=1 biosdevname=0"

grubの設定を変更した後、更新さます。

$ update-grub

最後に、rebootをしてifconfigコマンドでイーサネットの名前が変更されたことを確認します。

参考

codechachaCopyright ©2019 codechacha