I've linked a proposed patch which reverts commit 97595710b7. Revert doesn't apply cleanly so I massaged the patch to fit. Here is confirmation that it works as expected: $ egrep -A 2 'move.*(eth|rename)[[:digit:]]' /var/log/udev KERNEL[19.167867] move /devices/pci0000:00/0000:00:07.0/net/rename4 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:07.0/net/rename4 -- KERNEL[19.449910] move /devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.1/net/rename6 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.1/net/rename6 -- KERNEL[19.472417] move /devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:00.0/0000:04:00.0/net/eth2 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:00.0/0000:04:00.0/net/eth2 -- KERNEL[19.488425] move /devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.0/net/eth4 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.0/net/eth4 -- KERNEL[19.504160] move /devices/pci0000:00/0000:00:07.0/net/eth0 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:07.0/net/eth0 -- KERNEL[19.528341] move /devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.1/net/eth3 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.1/net/eth3 -- UDEV [26.859211] move /devices/pci0000:00/0000:00:07.0/net/rename4 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:07.0/net/rename4 -- UDEV [26.878494] move /devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.1/net/rename6 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.1/net/rename6 -- UDEV [26.880061] move /devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:00.0/0000:04:00.0/net/eth2 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:00.0/0000:04:00.0/net/eth2 -- UDEV [26.881605] move /devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.0/net/eth4 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.0/net/eth4 -- UDEV [26.883240] move /devices/pci0000:00/0000:00:07.0/net/eth0 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:07.0/net/eth0 -- UDEV [26.884382] move /devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.1/net/eth3 (net) ACTION=move DEVPATH=/devices/pci0000:00/0000:00:09.0/0000:02:00.0/0000:03:01.0/0000:05:00.1/net/eth3 $ ifconfig -a | grep '^eth' eth0 Link encap:Ethernet HWaddr 00:25:22:75:e6:9e eth1 Link encap:Ethernet HWaddr 00:15:17:8f:99:c0 eth2 Link encap:Ethernet HWaddr 00:15:17:8f:99:c1 eth3 Link encap:Ethernet HWaddr 00:15:17:8f:99:c2 eth4 Link encap:Ethernet HWaddr 00:15:17:8f:99:c3 $ sudo ifup -a 2>&1 | tee /tmp/ifup.log Reading directory /etc/network/interfaces.d Parsing file /etc/network/interfaces.d/eth0 Parsing file /etc/network/interfaces.d/eth1 Parsing file /etc/network/interfaces.d/eth2 Parsing file /etc/network/interfaces.d/eth3 Parsing file /etc/network/interfaces.d/eth4 Parsing file /etc/network/interfaces.d/lo run-parts --verbose /etc/network/if-pre-up.d ip link set up dev lo 2>/dev/null Configuring interface lo=lo (inet) run-parts --verbose /etc/network/if-pre-up.d run-parts --verbose /etc/network/if-up.d run-parts: executing /etc/network/if-up.d/000resolvconf run-parts: executing /etc/network/if-up.d/ntpdate run-parts: executing /etc/network/if-up.d/postfix run-parts: executing /etc/network/if-up.d/upstart Configuring interface lo=lo (inet) run-parts --verbose /etc/network/if-pre-up.d run-parts --verbose /etc/network/if-up.d run-parts: executing /etc/network/if-up.d/000resolvconf run-parts: executing /etc/network/if-up.d/ntpdate run-parts: executing /etc/network/if-up.d/postfix run-parts: executing /etc/network/if-up.d/upstart Configuring interface eth0=eth0 (inet) run-parts --verbose /etc/network/if-pre-up.d dhclient -1 -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0 Internet Systems Consortium DHCP Client 4.2.4 Copyright 2004-2012 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/eth0/00:25:22:75:e6:9e Sending on LPF/eth0/00:25:22:75:e6:9e Sending on Socket/fallback DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0x4c6d33c1) DHCPREQUEST of 10.254.251.3 on eth0 to 255.255.255.255 port 67 (xid=0x4c6d33c1) DHCPOFFER of 10.254.251.3 from 10.254.251.1 DHCPACK of 10.254.251.3 from 10.254.251.1 bound to 10.254.251.3 -- renewal in 10401 seconds. run-parts --verbose /etc/network/if-up.d run-parts: executing /etc/network/if-up.d/000resolvconf run-parts: executing /etc/network/if-up.d/ntpdate run-parts: executing /etc/network/if-up.d/postfix run-parts: executing /etc/network/if-up.d/upstart Configuring interface eth1=eth1 (inet) run-parts --verbose /etc/network/if-pre-up.d dhclient -1 -v -pf /run/dhclient.eth1.pid -lf /var/lib/dhcp/dhclient.eth1.leases eth1 Internet Systems Consortium DHCP Client 4.2.4 Copyright 2004-2012 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/eth1/00:15:17:8f:99:c0 Sending on LPF/eth1/00:15:17:8f:99:c0 Sending on Socket/fallback DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 3 (xid=0x2cec577c) DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 7 (xid=0x2cec577c) DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 11 (xid=0x2cec577c) No DHCPOFFERS received. Unable to obtain a lease on first try. Exiting. Configuring interface eth2=eth2 (inet) run-parts --verbose /etc/network/if-pre-up.d Failed to bring up eth1. dhclient -1 -v -pf /run/dhclient.eth2.pid -lf /var/lib/dhcp/dhclient.eth2.leases eth2 Internet Systems Consortium DHCP Client 4.2.4 Copyright 2004-2012 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/eth2/00:15:17:8f:99:c1 Sending on LPF/eth2/00:15:17:8f:99:c1 Sending on Socket/fallback DHCPDISCOVER on eth2 to 255.255.255.255 port 67 interval 3 (xid=0x503c6b65) DHCPDISCOVER on eth2 to 255.255.255.255 port 67 interval 6 (xid=0x503c6b65) DHCPDISCOVER on eth2 to 255.255.255.255 port 67 interval 12 (xid=0x503c6b65) No DHCPOFFERS received. Unable to obtain a lease on first try. Exiting. Configuring interface eth3=eth3 (inet) run-parts --verbose /etc/network/if-pre-up.d Failed to bring up eth2. dhclient -1 -v -pf /run/dhclient.eth3.pid -lf /var/lib/dhcp/dhclient.eth3.leases eth3 Internet Systems Consortium DHCP Client 4.2.4 Copyright 2004-2012 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/eth3/00:15:17:8f:99:c2 Sending on LPF/eth3/00:15:17:8f:99:c2 Sending on Socket/fallback DHCPDISCOVER on eth3 to 255.255.255.255 port 67 interval 3 (xid=0x5c2bc775) DHCPDISCOVER on eth3 to 255.255.255.255 port 67 interval 7 (xid=0x5c2bc775) DHCPDISCOVER on eth3 to 255.255.255.255 port 67 interval 7 (xid=0x5c2bc775) DHCPDISCOVER on eth3 to 255.255.255.255 port 67 interval 4 (xid=0x5c2bc775) No DHCPOFFERS received. Unable to obtain a lease on first try. Exiting. Configuring interface eth4=eth4 (inet) run-parts --verbose /etc/network/if-pre-up.d Failed to bring up eth3. dhclient -1 -v -pf /run/dhclient.eth4.pid -lf /var/lib/dhcp/dhclient.eth4.leases eth4 Internet Systems Consortium DHCP Client 4.2.4 Copyright 2004-2012 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/eth4/00:15:17:8f:99:c3 Sending on LPF/eth4/00:15:17:8f:99:c3 Sending on Socket/fallback DHCPDISCOVER on eth4 to 255.255.255.255 port 67 interval 3 (xid=0x79c12486) DHCPDISCOVER on eth4 to 255.255.255.255 port 67 interval 6 (xid=0x79c12486) DHCPDISCOVER on eth4 to 255.255.255.255 port 67 interval 12 (xid=0x79c12486) No DHCPOFFERS received. Unable to obtain a lease on first try. Exiting. run-parts --verbose /etc/network/if-up.d Failed to bring up eth4. run-parts: executing /etc/network/if-up.d/000resolvconf run-parts: executing /etc/network/if-up.d/ntpdate run-parts: executing /etc/network/if-up.d/postfix run-parts: executing /etc/network/if-up.d/upstart