[CentOS] RHEL 6.1 beta

Mon May 2 15:14:06 UTC 2011
Lamar Owen <lowen at pari.edu>

On Monday, May 02, 2011 09:57:19 AM Steve Clark wrote:
> On 05/02/2011 09:38 AM, Lamar Owen wrote:
> > But, yes, a different way of looking at NICs is coming down the pipe.  It's about time.
> EGADS Why?  After working with FreeBSD for ten years it so nice not to have to worry is this rl0, vr0, em0, fxp0, bge0, ed0,
> etc in networking scripts. Why would you want to go back to that?

I knew I'd get a reaction..... :-)  And it's good to see Peter A around again.....

Major networking gear does this; cisco, for instance, gives you things like FastEthernet4/47, or GigabitEthernet2/2, or TenGigabitEthernet1/0, or POS3/0, etc for networking interfaces.  Having seen the PCI eth device flips before between update releases of EL4, to give one example, it's really nice to be able to really know what device you've plugged a particular cable into, and know it in an unequivocal, and unchanging way.

I might, for instance, put the server's primary 'serving' port(s) on server-grade gig or tengig ethernet adapters, but do out-of-band ethernet management on the motherboard's built-in Realtek 8139.  Ok, I have eth0, eth1, eth2, and eth3.  I have a dual-port Intel e1000 on a 64-bit PCI-X slot (and the card is PCI-X 133 capable, and I have two motherboard ethernet ports.

Care to guess which eth's go to which ports with a recent kernel (F14's kernel)?  You might cringe: eth0 is the first e1000 port; eth1 and eth2 are the first and second motherboard ports (and the linux enumeration order is opposite of the labeling on the botherboard!); eth3 is the second e1000 port.  This is better than previous; I've used the same hardware for quite a while now for one of my development servers, and between CentOS 5, and Fedoras 11, 12, 13, and 14, I've not had consistent ethernet enumeration.

Likewise, I'm working on a packetfence box (based on C5); the capture devices are server grade gig-e devices, and the managment port is a run-of-the-mill RTL8139.  I really want to be able, without having eyes on the box, to know for a fact what device I'm working with.  I know about grepping dmesg, but even then it's not nearly as easy as with a cisco box (like our two 7609's or our 12008) where I just:
configure terminal
interface gigabitethernet1/2

and I *know* exactly, with no magic, what port I'm working with.

I also know that my requirements aren't typical 'home' users' requirements; but this *is* the CentOS list, not the Fedora list, right?

I know the convenience of kickstarting to possibly heterogeneous hardware; but device aliases are available and reasonable setup of those aliases can eliminate most of the problems.

Now, I'm not sure I particularly care for the current biosdevname setup; but I also know that upstream is going to be rather careful about this particular change, especially given the flak that has happened in the past with devnames flipping between kernel releases.

But then I can pull out all the stops on my most beastly networking config on a Linux box: our Sun E6500 (for which I hope to do a from-source C6 rebuild): every I/O card in the box has an ethernet port; I have eight I/O cards in this box, two of which are SunGEM gigabit cards.  I'd love to be able to get the devname in a slot-subslot format, like cisco..... but that's not currently the way it is.  And it gets worse if I pull an I/O card, particularly given the E6500's slot numbered 'fun.'

When you get to the level of a box having half a dozen or more ethernet devices of various capabilities and speeds, you begin to really despise the single namespace that currently exists, especially when the devnames change between kernel releases.

HWADDR in the configs has helped fix some of that, but that's worse than the biosdevname setup when it comes to imaging/cloing between multiple boxes....