The default for both core20 and server is 'net.ifnames=0' which disables persistent network interface names so it's expected to see eth0 and wlan0. cat /proc/cmdline coherent_pool=1M 8250.nr_uarts=1 bcm2708_fb.fbwidth=1280 bcm2708_fb.fbheight=1024 bcm2708_fb.fbswap=1 smsc95xx.macaddr=DC:A6:32:08:85:96 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 net.ifnames=0 dwc_otg.lpm_enable=0 root=LABEL=writable rootfstype=ext4 elevator=deadline rootwait fixrtc console=tty1 console=ttyS0,115200 quiet splash However, if I drop 'net.ifnames=0' from cmdline.txt I *do* get a persistent name on a 3B+ but *not* on a 4B. On a Pi 3B: $ udevadm info /sys/class/net/enxb827eb3eabfb P: /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.0/net/enxb827eb3eabfb L: 0 E: DEVPATH=/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.0/net/enxb827eb3eabfb E: INTERFACE=enxb827eb3eabfb E: IFINDEX=2 E: SUBSYSTEM=net E: USEC_INITIALIZED=5428547 E: ID_MM_CANDIDATE=1 E: ID_NET_NAMING_SCHEME=v245 E: ID_NET_NAME_MAC=enxb827eb3eabfb E: ID_OUI_FROM_DATABASE=Raspberry Pi Foundation E: ID_VENDOR=0424 E: ID_VENDOR_ENC=0424 E: ID_VENDOR_ID=0424 E: ID_MODEL=7800 E: ID_MODEL_ENC=7800 E: ID_MODEL_ID=7800 E: ID_REVISION=0300 E: ID_SERIAL=0424_7800 E: ID_TYPE=generic E: ID_BUS=usb E: ID_USB_INTERFACES=:ff00ff: E: ID_USB_INTERFACE_NUM=00 E: ID_USB_DRIVER=lan78xx E: ID_USB_CLASS_FROM_DATABASE=Vendor Specific Class E: ID_VENDOR_FROM_DATABASE=Microchip Technology, Inc. (formerly SMSC) E: ID_PATH=platform-3f980000.usb-usb-0:1.1.1:1.0 E: ID_PATH_TAG=platform-3f980000_usb-usb-0_1_1_1_1_0 E: ID_NET_DRIVER=lan78xx E: ID_NET_LINK_FILE=/usr/lib/systemd/network/73-usb-net-by-mac.link E: ID_NET_NAME=enxb827eb3eabfb E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/enxb827eb3eabfb E: TAGS=:systemd: $ udevadm test-builtin net_id /sys/class/net/enxb827eb3eabfb Load module index Parsed configuration file /usr/lib/systemd/network/99-default.link Parsed configuration file /usr/lib/systemd/network/73-usb-net-by-mac.link Created link configuration context. Using default interface naming scheme 'v245'. ID_NET_NAMING_SCHEME=v245 ID_NET_NAME_MAC=enxb827eb3eabfb ID_OUI_FROM_DATABASE=Raspberry Pi Foundation Unload module index Unloaded link configuration context. /usr/lib/systemd/network/73-usb-net-by-mac.link is the systemd policy file that handles the renaming of eth0. On a Pi 4B: $ udevadm info /sys/class/net/eth0 P: /devices/platform/scb/fd580000.ethernet/net/eth0 L: 0 E: DEVPATH=/devices/platform/scb/fd580000.ethernet/net/eth0 E: INTERFACE=eth0 E: IFINDEX=2 E: SUBSYSTEM=net E: USEC_INITIALIZED=2348632 E: ID_MM_CANDIDATE=1 E: ID_NET_NAMING_SCHEME=v245 E: ID_NET_NAME_MAC=enxdca632088596 E: ID_OUI_FROM_DATABASE=Raspberry Pi Trading Ltd E: ID_PATH=platform-fd580000.ethernet E: ID_PATH_TAG=platform-fd580000_ethernet E: ID_NET_DRIVER=bcmgenet E: ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/eth0 E: TAGS=:systemd: $ udevadm test-builtin net_id /sys/class/net/eth0 Load module index Parsed configuration file /usr/lib/systemd/network/99-default.link Parsed configuration file /usr/lib/systemd/network/73-usb-net-by-mac.link Created link configuration context. Using default interface naming scheme 'v245'. ID_NET_NAMING_SCHEME=v245 ID_NET_NAME_MAC=enxdca632088596 ID_OUI_FROM_DATABASE=Raspberry Pi Trading Ltd Unload module index Unloaded link configuration context. systemd can't handle the platform attached bcmgenet driver of the Pi 4B so hence no renaming. I've created the following systemd file $ cat /etc/systemd/network/73-platform-net-by-mac.link [Match] Path=platform-*.ethernet [Link] NamePolicy=mac rebooted and ended up with a persistent net name for eth0: $ udevadm info /sys/class/net/enxdca632088596 P: /devices/platform/scb/fd580000.ethernet/net/enxdca632088596 L: 0 E: DEVPATH=/devices/platform/scb/fd580000.ethernet/net/enxdca632088596 E: INTERFACE=enxdca632088596 E: IFINDEX=2 E: SUBSYSTEM=net E: USEC_INITIALIZED=2337681 E: ID_MM_CANDIDATE=1 E: ID_NET_NAMING_SCHEME=v245 E: ID_NET_NAME_MAC=enxdca632088596 E: ID_OUI_FROM_DATABASE=Raspberry Pi Trading Ltd E: ID_PATH=platform-fd580000.ethernet E: ID_PATH_TAG=platform-fd580000_ethernet E: ID_NET_DRIVER=bcmgenet E: ID_NET_LINK_FILE=/etc/systemd/network/73-platform-net-by-mac.link E: ID_NET_NAME=enxdca632088596 E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/enxdca632088596 /sys/subsystem/net/devices/enxdca632088596 E: TAGS=:systemd: Don't know if that's the right way to do this. Also, wlan0 still has a non-persistent name, so that needs to be addressed too if we want to go that route.