On Wed, Jul 12, 2017 at 07:40:13PM +0100, Roger Lynn wrote: > On 10/07/17 19:40, Marvin Renich wrote: > > <snip lots of good arguments> > > > There is an easy fix to revert the default behavior while still allowing > > knowledgeable sysadmins to get the new behavior. On the other hand, > > those who need to administer systems but are not sysadmins by trade (and > > thus will have to do significantly more research to even know that the > > older behavior is possible) are the ones who need the older behavior as > > the default. > > This caught me out on a recent new installation, which gave me these new > names which are too complicated to be usable. I wasted hours working out > what had happened, how to fix it and how to write a udev rules file from > scratch. And having just read this thread, I've discovered that the rules > I've written are themselves apparently unreliable, for example: > SUBSYSTEM=="net", ATTR{address}=="1c:1b:0d:9a:34:98", NAME="eth0" > SUBSYSTEM=="net", ATTR{address}=="1c:1b:0d:9a:34:9a", NAME="eth1"
This worked fine on jessie, but on stretch it doesn't anymore. I've solved the problem by net.ifnames=0; apparently the cause is rules numbered 73..80 overwriting those set by 70-persistent-net.rules You also shouldn't use eth0/eth1 because the races aren't fully solved; using descriptive names like lan0/out0 has the extra benefit of marking which interface is used for what purpose. Meow! -- ⢀⣴⠾⠻⢶⣦⠀ ⣾⠁⢠⠒⠀⣿⡁ A dumb species has no way to open a tuna can. ⢿⡄⠘⠷⠚⠋⠀ A smart species invents a can opener. ⠈⠳⣄⠀⠀⠀⠀ A master species delegates.