Home Raspberry Pi Raspbian Stretch network interface name changes

Raspbian Stretch network interface name changes

Changes are for the best, but also troublesome!

Finally, I got some free time to update Raspbian Jessie to Raspbian Stretch on my Raspberry Pi. Following initial advice, I started from scratch, therefore, everything had to be set as well. I mentioned the Raspbian Stretch network interface name changes in my post, but frankly speaking, I assumed that by default, Raspbian would keep the old names for the sake of the scripts. I was wrong.

Raspbian Stretch network interface name changes

If you check your network interfaces on a new installation of Raspbian Stretch

ifconfig

instead of the familiar  eth0, eth1… & wlan0, wlan1… you will find a new (and bizarre at first) name. It will be something like this: enxb827es19aa14 (I modified mine for security reasons).

The Raspbian Stretch network interface name is generated from your MAC address for that interface and it’s no longer easy to guess without knowing the MAC.

Ethernet MAC AA:BB:CC:DD:EE:FF:GG  ---> enxAA:BB:CC:DD:EE:FF:GG

While this was done to please the enterprise Linux users and their behemoth alike setups, it’s game breaking for many of us – Raspberry Pi users. Each time a piece of code would refer to the interface by eth0/wlan0 – it fails miserably on the new Raspbian Stretch.

Solution

The best solution to this is to disable the Raspbian Stretch network interface name changes at the boot level. You can do this by removing the SD card and adding this line to the cmdline.txt file:

net.ifnames=0

This will disable the new way of naming things and restore the old settings. You don’t have to reinstall the Stretch again. The changes will apply after the next reboot.
You can also do this via configuration menu:

 sudo raspi-congif

In the network interfaces, you will find the option to toggle the names. Names should be set to the correct names by default. If you want to enable the new naming scheme – use the option provided.

If your scripts are not working after the new update consider either changing the cmdline.txt, or look up your new interface name and update the relevant files by replacing each instance of the wlan/eth with a new name. I wrote this, as it is easier to reference the changes in my older tutorials than writing instructions for each previously created page.

PayPal

Nothing says "Thank you" better than keeping my coffee jar topped up!

Patreon

Support me on Patreon and get an early access to tutorial files and videos.

image/svg+xml

Bitcoin (BTC)

Use this QR to keep me caffeinated in style with crypto-currency

SATA HAT

Add an SSD to Raspberry Pi 4 and turn it into a super-cooled NAS drive.

More HATs

Argon One

Enclose Raspberry Pi 4 inside this great case with custom I/O, cooling and GPIO

More cases on

Best Raspberry Pi Projects

How to use Raspberry PI as WOL (wake on lan) server

0
While you could wake up your PC from a mobile directly, having a dedicated server capable of doing so is the best solution. The reason is simple. You can hook up as many devices as you wish with a single endpoint. This is why Raspberry Pi is perfect for this.

Free wireless doorbell (Amazon Dash button hack)

0
The most terrifying situation I can imagine* is missing a parcel

Raspberry Pi NAS: (NAS-pi) Modding like a boss #part2

0
Plex and RAID1 NAS drive build log

MagPi – auto-downloader

0
Grab each edition of Mag Pi as soon as possible!

HOW TO...

Raspberry Pi Zero, Raspberry Pi 3A+ WiFi without keyboard or cables

0
Getting Raspberry Pi boards connected in seconds

Everything you need to start using JSON

0
It's JSON not Jason, just saying!

How to use Join App in NodeRED

0
The day finally comes where Join app is almost everywhere!

Driving LCD with Arduino and Raspberry Pi

0
Displaying things on an LCD screen is as easy as going through a cup of jellybeans while writing this tutorial!

Raspbian Stretch network interface name changes

0
Changes are for the best, but also troublesome!