On Tue, 22 Dec 2020 04:21:40 +0000 tux...@sapo.pt wrote: > hello, > > > > > "Hi, > > > a few days ago I was able to complete may new router > > > > with 12 nics and 1 wifi. I moved the devuan drive from > > > > my previous defunct box to the new one and experienced > > > > all the problems reported in the "Ethernet names revisited" > > > > thread. > > > > I tried all the wise advice of the thread included my own > > > > just to discover that nothing really works reliably. > > > > > > > > Things I've tried in various combinations: > > > > > > > > 1) 70-persistent-net.rules with mac > > > > 2) 70-persistent-net.rules with pci bus numbers > > > > 3) 60-persistent-net.rules with mac > > > > 4) 60-persistent-net.rules with pci bus numbers > > > > 5) net.ifnames=0 / net.ifnames=1 in grub > > > > 6) biosdevname=0 in grub > > > > 7) renaming the interfaces in /etc/network/interfaces > > > > 8) using ifrename > > > > > > > > Always the 12 nics came up with different names, > > > > or some of them were missing due to collisions > > > > during the rename process and the router was > > > > borked with me yelling. > > > > Especially sarcastic I've found the definition of > > > > the new "predictable names" because there is > > > > nothing really predictable about them and at every > > > > reboot they can be totally different, one time being > > > > enp5s0 and next time enp8s0f1 depending on > > > > the BIOS initialization process ( I suppose....). > > > > At the end I started thinking about a KISS way to get > > > > my persistent interface names back without > > > > using udev/eudev or other non cooperative software. > > > > I've come up with a init script that I've called > > > > if2mac that matches interfaces to mac addresses > > > > early in the boot process before networking is set up, > > > > that for me works reliably (after a night of reboots). > > > > I post it here so that If some bold beta testers on the list > > > > are interested they can try it out in the hope that > > > > it works for them (and AT THEIR OWN RISK!!!). > > > > To use it copy the script to /etc/init.d/: > > > > > > > > cp if2mac /etc/init.d/ > > > > chmod +x /etc/init.d/if2mac > > > > insserv if2mac > > > > > > > > and the configuration file to /etc/if2mac.conf. > > > > > > > > ## Sample configuration file for if2mac. > > > > ## > > > > ## WIRED_MAC_LIST and WIRELESS_MAC_LIST contain a list of MAC > > > > ## addresses in the desired order top to down starting at > > > > ## position 0. For example: > > > > ## WIRED_MAC_LIST="\ > > > > ## 00:11:22:33:44:54 \ <= The space is needed!!! > > > > ## 00:11:22:33:44:55 \ > > > > ## 00:11:22:33:44:56" > > > > ## The WIRED_PREFIX and WIRELESS_PREFIX variables can be changed > > > > ## at your liking (opt, port, whatever). > > > > > > > > WIRED_PREFIX="eth" > > > > > > > > WIRED_MAC_LIST="\ > > > > 00:12:21:c4:56:68 \ > > > > 00:12:21:c4:56:69 \ > > > > 00:13:21:c4:56:6a \ > > > > 00:13:21:c4:56:6b \ > > > > 00:33:18:04:a3:46 \ > > > > 00:34:18:04:a3:47 \ > > > > 00:35:18:04:a3:48 \ > > > > 00:36:18:04:a3:49 \ > > > > 00:36:18:04:a3:4a \ > > > > 00:36:18:04:a3:4b \ > > > > 00:36:18:04:a3:4c \ > > > > 00:56:18:04:a3:4d" > > > > > > > > WIRELESS_PREFIX="wlan" > > > > > > > > WIRELESS_MAC_LIST="\ > > > > 54:2a:a2:2b:b3:55" > > > > > > > > Attached you will find the init script and a sample > > > > configuration file. Multiple configuration files > > > > to allow more prefixes are not supported because > > > > this kind of renaming could be done in /etc/network/interfaces > > > > once the interfaces came up with predictable and persistent names. > > > > At this time only > > > > > > > > en Ethernet wired > > > > et Ethernet wired old > > > > wl Wireless local area network (WLAN) > > > > > > > > interfaces are supported with both old style > > > > and new "predictable" names. > > > > > > > > Prerequisites are: > > > > /bin/cat > > > > /sbin/ip > > > > and a mounted /sysfs. > > > > > > > > Hints improvements and critics are welcome. > > > > Eventually if there is some interest this could be packaged > > > > (with the help of some devuan packaging gurus). > > > > > > > > Hope this helps. Enjoy. > > > > Ciao,farmatito" > > > > > You can try to remove eth{0 .. 11} first, via udev rule, and then > add them again each by its maccaddr.. > > Best Regards, > > tux
Hi, I would prefer not to use udev/eudev at all for it and stick with my KISS approach. BTW I don't know how to achieve this with udev rules could you be so kind and make a minimal example. Ciao, Tito _______________________________________________ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng