NICがeth0に割り振られないときの対処

2020.3.4 (水)

KVMのイメージなどからVMインスタンスを立ち上げた際にeth1やeth2に割り振られてしまうときがあります。イメージが元々あったデータセンターでのNICが残ってしまっていて、新しいNICに新しいVMインスタンスが割り当てられてしまうようです。ip aで見てみてると何故かeth2に割り当てられている。

$ 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
    inet 192.168.60.20/32 brd 192.168.60.20 scope global lo:0
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc pfifo_fast state UP qlen 1000
    link/ether 42:01:c0:a8:32:34 brd ff:ff:ff:ff:ff:ff
    inet 192.168.50.52/32 brd 192.168.50.52 scope global eth2
    inet6 fe80::4001:c0ff:fea8:3234/64 scope link
       valid_lft forever preferred_lft forever

DEVICEの方を確認すると、

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth2 ←なぜか2
...(中略)
PEERDNS=no

eth0にeth2が割り当てられているので気持ちが悪い。

  • /etc/sysconfig/network-scripts/ifcfg-eth0のDEVICEをeth2からeth0に修正
  • /etc/udev/rules.d/70-persistent-net.rulesの削除

で、ネットワークを再起動するサーバー再起動するとeth0に戻ってくれる。ただしシリアルコンソールなどローカルでログインできる状態にしておかないと危なっかしいです。