I've got a server running CentOS 5.3 (Final; kernel version 2.6.18) which I need to add a 2nd NIC to, initially temporarily, but eventually permanently. I'm not familiar with installing drivers under Linux and have only used system-config-network-tui
and editing config files (we have no version of X installed) to configure the built-in ethernet adapter.
I found a few notes stating that the Apple USB Ethernet adapter works well under Linux. We're an Apple shop, so we have plenty and that'll do for the short term while we track down a better PCI-X ethernet adapter for this server. So, I downloaded & installed (make
and make install
) the appropriate version of the recommended AX88178 driver (Linux 2.6.38; for "Android 1.x/2.x/3.0, Linux kernel 2.6.14 and later"). After plugging in the Apple USB Ethernet adapter, it does show in the results of lsusb
, but does not show in the options when I run system-config-network-tui
.
The .ko file that was compiled & installed was "asix.ko" and if I run lsmod | grep asix
, I get the following:
asix 82176 0
mii 38849 1 asix
So, does that the kernel module is correctly installed & loaded? Do I need to alias "eth2" ("eth0" is the built-in ethernet and "eth1" is listed in system-config-network-tui
as "skge", but is definitely not what I just plugged in) to "asix" in /etc/modules.conf
as noted here? What other steps might I be missing?
Of note: I do now see a "dev23116" network interface when I run ifconfig -a
that wasn't there before I installed the drivers. Is that the USB ethernet adapter? If so, do I alias that or use that as the interface's device in system-config-network-tui
?
So, the 'devXXXXX' interface was generated whenever I plugged in the Apple USB Ethernet adapter (and went away when unplugged), but it changed, so I don't expect it to have the same device name after a reboot. (Not to mention I couldn't get an IP to stick to it when configuring using
system-config-network-tui
.)When plugging the Apple USB Ethernet adapter in, I got the following in
/var/log/messages
:I did find a line reading
alias eth1 skge
in/etc/modprobe.conf
(for that odd eth1 interface that is not anything and never shows up as connected) and commented it out (esp. since/var/logs/messages
show the log registering asix as eth1). After doing so, giving eth1 a static IP usingsystem-config-network-tui
, and disconnected & reconnecting the Apple USB Ethernet adapter, it now always shows up as eth1 and with the correct ethernet address. I can also ping hosts on that subnet, so this is working.The main issue appears to have been the conflict between the hard-coded alias and the asix module trying to register as the same name.
One additional note: It seems to change the default route to the Apple USB Ethernet adapter whenever it's plugged in, so you have to be sure to check that & adjust, if necessary.