On Thu, Nov 14, 2019 at 11:21 AM Grant Edwards
<grant.b.edwa...@gmail.com> wrote:
>
> The way it was explained to me was that the old way fell down in some
> situations with multiple interfaces.  Interfaces were named in the
> order they were disovered by the kernel during startup.  For some
> sorts of NICs (e.g. PCI) the discovery order is repeatible, so no
> problems.
>
> However, for some sorts of interfaces (e.g. USB attached devices), the
> discovery order isn't always repeatable.  The new scheme was
> implemented to make sure than every time you reboot you get interface
> names that corresponded to the same physical RJ45 jacks they did the
> last time.

Another issue is that network interfaces wasn't something really
accommodated in the original unix design, which is why they don't show
up in /dev.  I think on plan9 this was remedied, but of course nobody
uses that.

If they did show up as devices then we could use symlinks such as with
/dev/disk/by-id and so on to provide more flexible solutions.  I don't
think it is possible to have the same physical interface have multiple
names in the kernel so that you can have both eth0 and the new scheme
side-by-side.

I'd suggest that they should be named by MAC but of course even this
is malleable in some situations, and there is promiscuous mode as
well.

Persistent device names are tricky in a lot of situations, really.
Back when I was running mythtv I had multiple pl2303 devices and
keeping those straight required writing udev rules that created
symlinks based on the physical host port they were plugged into, which
is of course non-ideal in USB land.  It is less of an issue for
hardware that is sophisticated enough to present its own UUID.

-- 
Rich

Reply via email to