My headless virtual server running hardened gentoo on amd64 as kvm guest got unreachable after recent emerge @world including sys-fs/udev-208 I could fix it and trace the problem back to the persistent network names introduced with >=sys-fs/udev-200. Apparently someone decided to drop them for virtio devices somewhere after sys-fs/udev-204 and told no one. An eselect news item or so would have been nice. Network config with enx00163e069316 doesn't work anymore. Now it's just eth0 again. Reproducible: Always Steps to Reproduce: 1. Follow gentoo handbook/udev upgrade guide 1. udevadm test-builtin net_id /sys/class/net/eth0 2> /dev/null or whatever it's called 2. setup network config with ID_NET_NAME_MAC or whatever should take precedence according to udev upgrade guide 3. reboot 4. ls /sys/class/net Actual Results: ls output: eth0 lo Expected Results: ls output: enx00163e069316 lo or whatever the udevadm command listed udevadm test-builtin net_id /sys/class/net/eth0 /dev/null calling: test-builtin === trie on-disk === tool version: 208 file size: 5860871 bytes header size 80 bytes strings 1295087 bytes nodes 4565704 bytes load module index ID_NET_NAME_MAC=enx00163e069316 ID_OUI_FROM_DATABASE=Xensource, Inc. unload module index
> An eselect news item or so would have been nice. I suspect that you are the first person to report this; it is difficult to write a news item for a problem that you do not know exists.
Also, it does not appear that ID_NET_NAME_MAC has ever been used in the default 80-net-name-slot.rules file. Did you set up a custom rule?
No, as far as I can remember, I never tweaked or set up any udev rules. I just followed the udev upgrade guide when the update to sys-fs/udev-200 came up. ID_NET_NAME_MAC was the only thing udevadm gave me. The config using it worked until world update last week. I still have the init.d symlink and /etc/conf.d/net entry just in case.
Created attachment 367760 [details] udev rules file Hmm. I still don't recall udev using ID_NET_NAME_MAC out-of-the-box, and some grepping through various git revs doesn't turn up anything. However, you could drop this file in /etc/udev/rules.d to enable that behavior.
Udev team: Unless you have any other ideas, I guess this can be closed.
Thank you.
ID_NET_NAME_MAC has never been used by default, where as Comment #0 falsely suggests it was in use before no bug here, just documented behavior: http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ Quoting from above page: "What precisely has changed in v197? [ .. ] 4. Names incorporating the interfaces's MAC address (example: enx78e7d1ea46da) Classic, unpredictable kernel-native ethX naming (example: eth0) By default, systemd v197 will now name interfaces following policy 1) if that information from the firmware is applicable and available, falling back to 2) if that information from the firmware is applicable and available, falling back to 3) if applicable, falling back to 5) in all other cases. Policy 4) is not used by default, but is available if the user chooses so."