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
Confirmed
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  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.