Custom network interface names
This material is proposed for merging ... It should be merged with mdev. This could be part of a "configuring mdev" section in the mdev article (Discuss) |
This article shows how to rename/change name of a network interface.
Alpine Linux uses busybox mdev by default 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
Contents of /etc/mdev.conf
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...