On Tue, Jun 25, 2019 at 07:51:53PM -0400, The Wanderer wrote:
On 2019-06-25 at 09:28, Michael Stone wrote:

On Tue, Jun 25, 2019 at 08:46:28AM -0400, The Wanderer wrote:

On 2019-06-25 at 08:11, Michael Stone wrote:

It isn't because: 1) the new names are predictable but not
constant, so you can't configure a single default across all
systems

Which seems reasonable to describe as "unpredictable".

They're perfectly predictable for a given system.

And reasonably unpredictable between systems.

When dealing with other people's systems, there was always an element of randomness. I've run into it so often that it's just hard to understand why that's even debatable but I suppose people have differing experiences. If you're absolutely convinced that the world can't work if the first ethernet interface in a system isn't named eth0, just stop reading here because it won't get any better.

Just reiterating the case where they *are* predictable misses my point
so badly that it almost seems as if it must be intentional.

Really.

The old names also weren't constant, but people didn't seem to care
as much about the nuances because "that's the way it's always been".
(Sometimes it was an eth, sometimes it was a wlan, etc.) Why were
those differences ok but these differences aren't? Familiarity.

No, not just familiarity.

To the best of my awareness, the old names were 100% constant, as long
as you had no more than one interface *of a given type*.

And never changed anything, because locking the names via udev was necessary to keep them from renaming themselves. So if you bought a new nic it would never, ever show up as eth0 without some edits.

With the new names, the fact that two interfaces get different name
prefixes (etc.) tells you basically nothing useful about how to handle
them; it just exposes underlying hardware details of some kind, which
you don't actually need to know in order to make effective use of those
interfaces.

The en, wl, ww, etc, prefixes tell you the exact same information (what the class of interface is). The remaining information also relates useful information as to how the interface is attached. You might personally not care about that information, but it seems presumptuous to decide that nobody should.
On a single computer with any number of interfaces of any type, the
new names are 100% predictable from one boot to the next. (At least
assuming you don't change which slot a given network device is
connected to; IIRC that can change the assigned name, in at least
some cases.)

That does change the name, that's the entire point.

With no real benefit as far as I can tell, but yes.

Since I've already explained how that's helpful, I assume this is intentional? I understand that you refuse to believe that having more than one NIC is a thing.

Computers with multiple interfaces of the same type are, AFAIK
always have been, and IMO are likely to always be, much less common
than computers with at most one interface of a given type.

They're also the only computers where the name actually matters. In
the simple case it's set at install time and doesn't change, so it
could be completely random and it wouldn't make a difference.

It matters if you're giving someone directions, with the computer sight
unseen.

Before, you could write directions - or even a script - which just
referenced 'eth0' and/or 'wlan0', and hand the result out Internet-wide,
with assurance that it would work reliably for the large majority of people.

Now, you have to do something to detect the interface(s) and choose the
right one.

So your entire issue boils down to not wanting to explain a few fundamental concepts and instead take some shortcuts which would *never* have worked reliably in all cases? I'd rather just show people how to find out which interfaces they have and cover all the cases without all the drama.

ifquery --list | grep -v lo

And what about when you only want the wired interface, or only the
wireless one, but the machine might have one of each type?

Then look for the line that starts with w or e. Honestly, it seems like you're looking for problems. (Actually it's likely that the command above won't work with a wireless card, which was probably configured with network manager via a GUI. The issues with trying to support users in the wild on a variety of hardware are a lot more complicated than what the interface is named, and few of those issues are as trivial to overcome. It's basically impossible to easily cover all the ways a modern system might be configuring its network.)

(Plus, I'm pretty sure the environment I work with doesn't have ifquery;
it has ifconfig, but not necessarily much beyond that. The older
versions didn't even have a DHCP client more sophisticated than dhcpcd.
I can add tools to it, but that becomes a pain to maintain, for the same
reasons as adding 'net.ifnames=0' to the kernel command line would be.)

Since this is a debian list, forgive me for putting the command that works on a standard wired debian install first.

If there's more than one result, it was going to be hard "the old
way" also. More portably, something like

Why?

Just using 'eth0' blindly wasn't hard at all, and since we're dealing
with single-user workstations which will never have more than one wired
and one wireless interface, it was a safe assumption to rely on.

I never found it all that unusual to see more than one interface on a single user workstation. For all kinds of reasons like, "it came with two ethernet ports" or "the builtin one was a realtek and I wanted it to have an intel" or "it came with 100Mbps onboard and it needed gigabit (adjust to 1 and 10gbps for newer sytems)" or "the onboard one flaked out so I added this other thing". At this point it seems like you think that *your specific environment* is the only one that matters, even though other people are trying to make a distribution that reliably addresses a lot of different use cases. You're likely to continue to be disappointed that things are not optimized for your personal requirements.
Do the new names even
distinguish between the types? (I haven't paid them enough close
attention to have the necessary awareness of what names result in order
to be able to answer that question with any confidence.)

Criticisms based on honest investigation and grounded in facts have much more weight. Yes, there is a simple way to distinguish between physical network types.

Reply via email to