Network interface names

Hi,
we are using both device types: Revolution Pi Connect S (based on Compute Module 4S) and Revolution Pi Connect 4 (based on Compute Module 4).
For these devices only a single balenaOS version exists (each), 3.0.8+rev2 for Connect S and 5.3.3 for Connect 4.
We need to set a static IP address to the secondary Ethernet interface and we were using the following configuration in /mnt/boot/system-connections/custom_config:

[connection]
id=my-ethernet
type=ethernet
interface-name=eth1
permissions=
secondaries=

[ethernet]
mac-address-blacklist=

[ipv4]
address1=172.31.0.1
method=manual

This was working fine for the Connect S device but did not work for the Connect 4 device.
We found out, that the naming was different:
eth0 was named properly but the secondary device is named: enp1s0u3

Is there any way to have the network interfaces named as it usually is used to be, such as eth0, eth1, etc.?

Thank you very much,
Fritz

Hello Fritz,
I’m a relatively new user to balena but I have come across something similar with my devices. I had 2 almost identical Lenovo SE30 units but some underlying model number was slightly different. Well coincidentally enough, the manufacturer actually called out the ethernet interface names differently between these 2 devices.

So, from what I understand, this is actually not a balena issue, but it originates from the hardware itself and that requires you to modify your connection file. The connection file needs to know the correct interface name for the given device otherwise comms will not work on that port.

If you are ever unsure what the interface names are on a device, you can terminal into it from your balena dashboard and run “ip addr show” from the host os. It should list all possible interfaces and their respective names.

Disclaimer: I only use balenaCloud right now so if you are using some of the other balena offerings, the process my be slightly different to determine your interface names.

1 Like