Difference between revisions of "Custom network interface names"

From Alpine Linux
Jump to: navigation, search
(Created page with "This article shows how to rename/change name of a network interface. Alpine Linux uses ''busybox'' ''mdev'' to manage devices in ''/dev''. ''mdev'' reads ''/etc/mdev.conf'' a...")
 
(/etc/mdev.conf configuration)
 
Line 5: Line 5:
 
== ''/etc/mdev.conf'' configuration ==
 
== ''/etc/mdev.conf'' configuration ==
 
<pre>
 
<pre>
-net/.*         root:root 600 @/sbin/nameif -s
+
-SUBSYSTEM=net;DEVPATH=.*/net/.*;.*    root:root 600 @/sbin/nameif -s
 
</pre>
 
</pre>
  

Latest revision as of 10:11, 5 December 2020

This article shows how to rename/change name of a network interface.

Alpine Linux uses busybox mdev to manage devices in /dev. mdev reads /etc/mdev.conf and according to mdev documentation one can define a command to be executed per device definition. The command which is going to be used to change network interface name is nameif.

/etc/mdev.conf configuration

-SUBSYSTEM=net;DEVPATH=.*/net/.*;.*     root:root 600 @/sbin/nameif -s

Here we tell mdev to call nameif for devices found in /sys/class/net/.

# ls -d -C -1 /sys/class/net/eth*
/sys/class/net/eth1
/sys/class/net/eth2
/sys/class/net/eth3
/sys/class/net/eth4
/sys/class/net/eth5

nameif configuration

nameif itself reads /etc/mactab by default. Example line for a network interface with following hwaddr

# cat /sys/class/net/eth0/address
90:e2:ba:04:28:c0

would be

# grep 90:e2:ba:04:28:c0 /etc/mactab 
dmz0 90:e2:ba:04:28:c0

ramdisk rebuild

/etc/mdev.conf is part of ramdisk

# grep /etc/mdev.conf /etc/mkinitfs/features.d/*.files
/etc/mkinitfs/features.d/base.files:/etc/mdev.conf

thus we need to rebuild ramdisk

# mkinitfs $(ls /lib/modules/)
==> initramfs: creating /boot/initramfs-lts

finalization

To use renamed network interface without reboot, just call nameif while the network interface is down.

# nameif -s

And finally reboot...