RAspbian: predictable network names ain’t

predictable. This is super-annoying to me, maybe it’s the reverse logic of the command.

I want static IP for this particular RPi3B+ which is fully standalone, no dhcp servers, no nada. After floundering around for hours, attempting to remember what the “magic” thing was I needed to do to get the dhcpcd.conf file to allow static IP for eth0, and constantly getting new dhcp address leases, I found some hints in the enable predictable network names area.

Since jessie or so, it appears that raspbian has had a “feature” called predictable network names in the raspi-config setup file. Maybe I understood the logic at one time, since I have had success in the past with setting static ip addresses.

Anyway, in raspi-config, under network options, the N3 Network interface names function has had an “Enable/Disable predictable network interface names” feature. To me, predictable means I know ahead of time and for all time what the network interface is called, like eth0 or wlan0, or whatever. I can predict that, even after some tequila.

But NO, predictable means that the first wired network interface is now called “enx”&[hardware network device interface mac address] instead of good ol’ eth0, which is so much less predictable…

Ah, you say, “enx”&[hardware network device interface mac address] is completely predictable, and, to boot, unique to the device. Yeay! I get that. But, in the default dhcpcd.conf file, there’s a commented area that sez that all you need to do to enable static ip is to uncomment those lines and voila! you’ll have a static ip on the next reboot. However, those sample lines use the eth0 convention, not the more better “enx”&[hardware network device interface mac address], so it’s absolutely misleading.

After lots of cussing and kicking, I finally stumbled on this thread and the post by Dougie Lawson, which kindled a (dim) light in my head and made me attack the enable/disable predictable network interface names feature.

So, now I know that I can make completely customized dhcpcd.conf files by using the handy-dandy “enable” predictable network interface names function, but I now will need to remember to disable that feature whenever I want to follow the sample setup within dhcpcd.conf.