ethernet Interface naming has changed

Bug #1312785 reported by Doug Smythies
68
This bug affects 12 people
Affects Status Importance Assigned to Milestone
Ubuntu Server Guide
Undecided
Unassigned

Bug Description

Chapter 4 Networking - section 1 Network Configuration - subsection 1.1 Ethernet Interfaces - 1.1.2 Logical Names still refers to /etc/udev/rules.d/70-persistent-net.rules which no longer exists .

This section needs to be updated.

Some possible references:
https://wiki.gentoo.org/wiki/Udev/upgrade
http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/

summary: - ethernet Interface naming has chnaged
+ ethernet Interface naming has changed
Changed in serverguide:
status: New → In Progress
assignee: nobody → Doug Smythies (dsmythies)
Changed in serverguide:
assignee: Doug Smythies (dsmythies) → nobody
status: In Progress → Confirmed
Revision history for this message
Nelson Minar (g-nelson) wrote :

Having better docs for this would have saved me a few tense hours with a remote system without console access. The official Ubuntu docs are still wrong and various online helps points people to a confusing array of docs from other distros.

Long story short: a brand new Ubuntu 14.04 system seems to have biosdevname installed, which gives ethernet devices names like /dev/p4p1. An old Ubuntu 12.04 system upgraded to 14.04 does not get biosdevname, and uses old names like /dev/eth0. If a user (like me) installs biosdevname manually then on next reboot the devices will be given the new names, breaking the network configuration unless the user reconfigures /etc/network/interfaces.

Revision history for this message
Lonnie Lee Best (launchpad-startport) wrote :

I moved an Ubuntu Server 14.04 hard drive from one machine to another.

I had to edit my /etc/network/interface file, and everywhere it said eth0, I replaced "eth0" with its stupid new name: "p1p2", or was it "p2p1" or "p2p4" (can't remember).

Nelson, are you saying that this crappy new name won't even persist?

Revision history for this message
Doug Smythies (dsmythies) wrote :

This is still a mess, and we do not yet know how to change the documentation.

As mentioned above, on a brand new server 14.04.2 installation, the default kernel will use biosdevname by default, yet installing any other kernel will result in a non-functional network, because they all seem to not use biosdevname nor net.ifnames.
I have got my system sorted out for any kernel that I run by this:

GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=1 biosdevname=0"

but I also had to edit the /etc/network/interfaces file to put in the new (which were actually old) IF names.

References:
https://lists.ubuntu.com/archives/ubuntu-devel/2015-May/038761.html
http://askubuntu.com/questions/628217/use-of-predictable-network-interface-names-with-alternate-kernels

Revision history for this message
Andreas Wehler (andreas-wehler) wrote :

There has to be a differentiation between different systems.

On the one hand Ubuntu 16.04 is a main entry point within the structure:
    Ubuntu 16.04 » Ubuntu Server Guide » Networking »

On the other hand the link itself does not contain Ubuntu 16.04, but "lts" only:
    https://help.ubuntu.com/lts/serverguide/network-configuration.html#name-resolution

This yields to a conflict. There seems to be a need of different decoupled docs for different Ubuntu releases.

Revision history for this message
Doug Smythies (dsmythies) wrote :

@Andreas: We change where 'lts' points as required. There are other reasons, having to do with minimizing redundant efforts and such, we made it this way.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers