[Nix-dev] network interface naming

Mathijs Kwik mathijs at bluescreen303.nl
Sun May 11 22:29:45 CEST 2014


Hi all,

Some time ago, udev changed to stable interface names for networking.
So instead of eth0 and eth1 you would get enp0s3 (wired) and wlp1s5
(wireless) for example. And I think there existed a (nixos?) option to
stick to the previous behaviour for some time.

I recently upgraded an older system to our new 14.04 release and noticed
it now uses the new naming scheme, while it previously still used the
old scheme. I could not find the use-old-scheme option, nor did I enable
such a thing in the past.

I do not mind the new names (actually, I prefer them), so I changed all
references to the new names (firewall rules, custom networking setup,
vpn tweaking). This works fine on the real system, but I run into issues
when running such configuations in a vm. It seems qemu/kvm still has the
guest create eth0. 

Now, I can of course parameterise the entire config by an interface name
to easily modify the configuration for a vm build. But this is somewhat
ugly, especially because of the networking.interfaces.<name>. attrset.

But I'm hoping there's a better/nicer way to either force some interface
name to vms, or have the real system stick to the old naming scheme.

Any pointers?
Thanks,
Mathijs


More information about the nix-dev mailing list