I have a server with ubuntu on it and everything work fine.
All network interfaces are working.

I decide to move the drive to a new server and it boots to the OS without issue.
The network interfaces aren't working due to he different network card.
So 70-persistent-net.rules and change the ATTR{address}== with the new MAC addresses and reboot the server.

After, reboot the network interfaces are still not working.
So I find this solution:
Udev : renaming my network interface

It tells me to delete the KERNEL=="eth*" part.
I do that, reboot and the network works perfectly.

So my question is, Why?

What is this KERNEL attribute and why does it solve my problem?

Thank you

1 Answer 1


There cannot be two network interfaces with the same name, ever. So if udev will need to swap e.g. eth1 to eth2 and vice versa, it will first rename one of the NICs to rename, possibly with a unique string added, and then will do another pass.

But on the second pass, the KERNEL=="eth*" will no longer match the NIC, because its name is now rename.

  • Ah, thank you. That makes a lot of sense. I thought my issue was similar but I guess not. For me I'm moving my drives to a new server, the only config I'm changing in udev is the MAC addresses to match the new server's network card. And I can only get the interfaces up when removing the KERNEL=="eth*"
    – Symbux
    Commented Jan 17, 2021 at 5:17

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .