免責事項: これは英文の記事 の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
ifconfig コマンドを実行すると、ネットワーク インターフェイス(たとえば、eth0)が表示されず、新しいインターフェイス(たとえば、eth1)が表示されます。sudo /etc/init.d/networking restart コマンドを実行して、ゲスト OS 内のネットワークを再起動すると、次のエラーが表示されます。SIOCSIFADDR: no such device
eth0: ERROR while getting interface flags: No such device
Bind socket to interface: no such device
Failed to bring up ethXdmesg | grep eth コマンドによって dmesg ログを調べようとすると、次のようなメッセージが表示されます。udev: renamed network interfaces ethX to ethYこの問題を回避するには、ネットワーク インターフェイスの永続的 udev ルールを変更します。
/etc/udev/rules.d/70-persistent-net.rules ファイルを開きます。sudo vim /etc/udev/rules.d/70-persistent-net.rulesSUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:xx:xx:xx:xx:xx", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:xx:xx:xx:xx:xy", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"ATTR{address}= フィールドの MAC アドレスを見て、古いインターフェイスと新しいインターフェイスを識別します。次に例を示します。ATTR{address}=="xx:xx:xx:xx:xx:xy" ...NAME="eth0" # old
ATTR{address}=="xx:xx:xx:xx:xx:xx" ...NAME="eth1" # newATTR{address}=="xx:xx:xx:xx:xx:xy" ...NAME="eth0" # old
ATTR{address}=="xx:xx:xx:xx:xx:xx" ...NAME="eth0" # new
ATTR{address}=="xx:xx:xx:xx:xx:xx" ...NAME="eth0" # new