I am using an Ubuntu Linux system. For my task I have to run some modules by executing the respective scripts. All the modules must run at the same time in the background but all have different interface names, IPv4 & IPv6 addresses configuration. So, basically I have to run different modules simultaneously having different IP configuration.

Here I am specifying all the NIC card interfaces' addresses and their corresponding names in a persistent net rules file. Suppose I have one NIC card MAC address and want to have two different interface names associated with the same MAC address. I know we can assign multiple virtual IP addresses to a particular interface by making alias of it. But how can we assign different interface names to a particular hardware MAC address?

For example:

Persistent-net-generator.rules rules file. We can modify it, as long as you keep each rule on a single line, and change only the value of the NAME= key.

net device ()
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:04:9f:02:81:97", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

net device ()
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:04:9f:02:81:96", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

net device ()
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:04:9f:02:81:95", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"

How can I get two interface names associated with the MAC address "00:04:9f:02:81:97"?

  • 3
    Did you mean ethernet virtual interface like eth0,eth0:1,eth0:2,etc ? You can create many virtual interface on eth0 with one MAC address.
    – supriady
    Dec 23, 2016 at 5:44
  • You can just change it's MAC address using ifconfig NIC hw ether 00:04:9f:02:81:97. replace NIC with the desired interface name. But I don't know if this solves your problem. Dec 23, 2016 at 5:45
  • @supriady, But there is an issue. You should attention to how many same roles, device can play. unix.stackexchange.com/questions/328212/… Dec 23, 2016 at 5:50

1 Answer 1


You might want to take a look at the new iproute2 network interface alternative name feature (ip link altname). Note that the command syntax seems to have changed since that article. For example:

ip link property add dev eth0 altname someothername

Note that this is very new, you will need a recent version of iproute2 for it to work (v5.4.0 which came out on 2019-11-25, if I'm reading the git log right).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.