I've tested it again. Removed 70-persistent-net.rules, created two units in /etc/systemd/network: 10-lan1.link: [Match] MACAddress=xx:xx:xx:xx:xx:xx [Link] Name=lan1
10-wan0.link: [Match] MACAddress=yy:yy:yy:yy:yy:yy [Link] Name=wan0 (Apparently MAC values in quotes are invalid). After reboot I got this in journal: kernel: lan1: renamed from lo kernel: r8169 0000:04:00.0 rename2: renamed from eth0 kernel: 8139too 0000:05:00.0 rename3: renamed from eth1 kernel: ath9k 0000:05:06.0 rename4: renamed from wlan0 ... systemd-udevd[308]: error changing net interface name 'wlan0' to 'lan1': File exists systemd-udevd[308]: could not rename interface '4' from 'wlan0' to 'lan1': File exists It renamed lo to lan1, then refused to rename the correct interface to lan1 and totally ignored the interface that should be renamed to wan0. Physical interfaces remained with names: rename2, rename3, rename4.