Comment 14 for bug 1593379

alp (atoker) wrote :

The problem appears to be down to a syntax error - here's the fix we're using as a patch against current systemd in Xenial:

Splitting the IMPORT and ENV/GOTO directives onto separate lines gets things working.

With the patch deployed, the kernel parameter works as specified, allowing us to access hosts remotely after boot. We've tested the patch both with and without net.ifnames boot parameter and the USB ethernet device is assigned correctly as expected for each mode.

This should fix things for Raspberry Pi users as well..

--- /lib/udev/rules.d/73-usb-net-by-mac.rules.orig 2016-09-14 20:40:11.269999878 +0000
+++ /lib/udev/rules.d/73-usb-net-by-mac.rules 2016-09-14 20:42:05.719999834 +0000
@@ -3,7 +3,8 @@
 # is 0). Don't do this when ifnames is disabled via kernel command line or
 # customizing/disabling 80-net-setup-link.rules.

-IMPORT{cmdline}="net.ifnames", ENV{net.ifnames}=="0", GOTO="usb_net_by_mac_end"
+ENV{net.ifnames}=="0", GOTO="usb_net_by_mac_end"

 ACTION=="add", SUBSYSTEM=="net", SUBSYSTEMS=="usb", NAME=="", \
     ATTR{address}=="?[014589cd]:*", \