[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Proposal: enable stateless persistant network interface names



 ❦ 10 mai 2015 10:45 -0400, The Wanderer <wanderer@fastmail.fm> :

>> Do you speak about ifupdown? It's Debian only. eth* interfaces is
>> not *nix at all since all BSD are using per-driver naming
>> convention.
>
> Upon consideration, I suspect that I've been making - at least - the
> following three assumptions:
>
> * That ifupdown is essentially (in functionality if not in
> implementation) a set of wrappers around ifconfig, with a few additional
> scripts.

Why not.

> * That ifconfig uses /etc/network/interfaces just as ifupdown does, and
> so would have the same interface-naming limitations. (I think this one
> was based in part on observation of real-world behavior.)

ifconfig doesn't use /etc/network/interfaces. As far as I know, ifconfig
doesn't use any configuration file.

> * That ifconfig has been the standard way of working with network
> interfaces for more-or-less as long as there _has_ been a standard
> userspace way of doing that.

ifconfig is mostly unmaintained. The standard way to work with network
interfaces on Linux is "ip" (unlike most *nix). Also ifconfig isn't able
to see all IP addresses on a given interface.

>>> It has been safe to assume that wired interfaces will be named
>>> ethX, and wireless ones wlanX, for so long that that assumption is
>>> built into many existing procedures - both as implemented in code,
>>> and as implemented in human habits and practices. If that
>>> assumption is to be broken, IMO at minimum a multi-year explicit
>>> deprecation period (such as that used for Linux-kernel feature
>>> removal) would be appropriate.
>> 
>> On Linux, wireless drivers have long used eth* names, except for
>> some out-of-tree drivers. It was the introduction fo the MAC 802.11
>> soft layer (2.6.22+) that gradually switched drivers to use wlan*
>> names. And this change was driver by driver, at each release without
>> much publicity. Drivers not using the new framework to register
>> themselves are still using eth* names (like the Prism54 "full mac"
>> driver).
>
> I wasn't aware of the specifics of the shift; acknowledged. That would
> simply strengthen the argument for its having been safe to assume the
> ethX naming, though, at least as much as it weakens the argument for its
> having been safe to assume the wlanX naming.

The point is that Linux did change the prefix without any prior
warning. The world is still running despite this change.

>>> I'll note that I've also seem some proprietary (but
>>> mission-critical) software which hardcodes interface names in some
>>> places; for example, older versions of Novell ZENworks'
>>> system-imaging utility would crash when attempting to multicast on
>>> a machine with an interface named em1 and no interface named eth0,
>>> reporting an inability to get the MAC address.
>> 
>> This thread is about changing the default naming convention for
>> network interfaces. If you love to run an unmaintained version of
>> Novell ZENworks, you can still have an eth0 interface if you want.
>
> Where do you get "unmaintained" from?
>
> And my point was not about that one specific program; I was just using
> it as an example to indicate that there do exist important programs,
> which may not always be within the power of the people using them to
> modify, which are not compatible with other naming conventions.

Your key example is an old version of a proprietary software
that nobody ever heard of. Great example.

>> Actually, when rebooting your (mission-critical) server, you can have
>> a race condition where "eth1" is not the interface that was "eth1" on
>> the previous boot and "rename5" is the interface that should be 
>> "eth1". That's what needs to be fixed. Doing nothing won't fix that.
>
> I did not advocate doing nothing. I agree that having names change under
> one's feet is a bad thing.
>
> I simply think that a solution to this problem which breaks the
> interface-naming assumptions which have been in place for so long is
> quite likely to be, at least in some ways, a cure worse than the
> disease.

The disease is that actual servers running actual free software can
break at each boot because we cannot have both a persistent naming
scheme and use the eth* prefix is worse that the cure because old
versions of Novell ZENworks may stop to work on upgrade?

Seriously.
-- 
Terminate input by end-of-file or marker, not by count.
            - The Elements of Programming Style (Kernighan & Plauger)

Attachment: signature.asc
Description: PGP signature


Reply to: