• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 534
  • Last Modified:

NIC Card Problems on Red Hat 9.0

Hello,

I am having some problems getting NIC cards to work on Linux. Here is the story I have about 8 PCs in which I have installed Red Hat 9.0. I have three diffrent kinds of NIC cards. Every different type of NIC card has worked properly on at least one type of machine.

Here is what happens it finds the NIC card but calls it Eth1 instead of Eth0 (there is only one NIC on each machine) I have been deleted the NIC from the Networking applet and rebooting. This has worked on one machine but two of them are still not working.

On both of the machines with the problem Kudzu is not prompting me to configure a NIC card at bootup (after I delete it from the Networking Devices Applet). And it does not try to start up the NIC card at bootup either. I guess my question is how do I totally get rid of the NIC card settings so Kudzu will work properly or is their a way for me to manually set this up.

When I do an ifconfig up I get an error that the device is not found. Also one of the errors is "Determining IP Information for etho:1 SIOCSIFFLAGS cannot assign requested address failed.

Obvioulsy when I do an ifconfig I am not getting a DHCP address. Any thoughts would be greatly appreciated

0
langdj
Asked:
langdj
  • 7
  • 5
  • 3
2 Solutions
 
jlevieCommented:
Were each of these separate full installs or did you clone one installation to the other machines?

Have you taken one of these boxes and pulled NIC, booted up and allowed Kudzu to detect the missing card, then re-installed the NIC? As an alternative to that you could edit /etc/modules.conf and /etc/sysconfig/network-scripts/ifcfg-eth0, but allowing Kudzu to do it is simpler.
0
 
langdjAuthor Commented:
These are separte full installs.

Unfortunetly these NIC cards are on the Motherboard so I can't pull them. I don't think the BIOS will let you disable them either (I will double check though). Could you give me an example on how to edit these files?
0
 
GnsCommented:
Hm for some reason you likely get more than one ethernet device "detected". On the affected machines, look at the /etc/modules.conf file and see to it that only the relevant driver module is there (and that it is there for eth0, nothing else). Supposing you have an intel elink pro 100, youd have a line like
alias eth0 e100
in there.

When you have it so that it loads the correct driver (check that it loads ok with "lsmod" and "dmesg"), you need configure your network settings... You can use the nice redhat-config-network for this... but why bother, it's fairly simple to edit the files directly. In /etc/sysconfig/network you need have something like
NETWORKING=yes
HOSTNAME=myhost.mydomain.tld

and in /etc/sysconfig/network-scripts/ifcfg-eth0 you should have something like
DEVICE=eth0
BOOTPROTO=static
IPADDR=172.16.0.80
NETMASK=255.255.0.0
NETWORK=172.16.0.0
BROADCAST=172.16.255.255
ONBOOT=yes
... for a static setup (replace adress et al as needed:-), and
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
... for a DHCP based setup (provided you have a DHCP server on the lan).

-- Glenn
0
Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

 
GnsCommented:
Oops:
You should have a GATEWAY set like
GATEWAY=172.16.0.1
or similar in the /etc/sysconfig/network file too.

-- Glenn (a.k.a. Le Grand Typo)
0
 
langdjAuthor Commented:
Understand most of your response In the modules.conf file is the alias eth0 e100 refering to a file that is supposed to be in the /dev directory? If not what is it referrring too?


0
 
GnsCommented:
It is an instruction to the kernel module loading system that if someone tries to access the "eth0" kernel facility, it should load the kernel module e100 for it.... You have the available modules for your running kernel in the /lib/modules/$(uname -r)/ directory (you'll probably find NIC drivers under /lib/module/2.4.20-20.9/kernel/drivers/net). It is often quite easy to understand which module to use, and on a missconfigured system (where the NIC seems to be eth1) you can see that alias in the file... You can "test" by loading a driver: modprobe <drivername (ex: ne2k ro a ne2000 compatible card); lsmod will showwhat has been loaded, and dmesg will show any output from the kernel/modules during load/init.

-- Glenn
0
 
langdjAuthor Commented:
I took out my NIC rebooted and had Kudzu detect that it was missing. Rebooted and Kudzu found it. I then got a message telling me that alias eth0 e100 should say alias eth0 3cTX5 in the modules.conf file. I looked at the file and saw that the very first line was "alais eth0 e100 and the very last line was alias eth1 3cTX5"

I changed the first line from "alias eth0 e100" to "alias eth0 3cTX5" where 3cTX5 is the driver for my NIC. And deleted the eth1 line (the last line)

I rebooted and got a "Kernel Panic" error. I then booted from a boot disk with the goal of using Vi to edit the file back. I typed Linux Rescue and it brought me to a prompt. However I did an ls -laF in the /etc directory and could not even find the modules.conf file. I was never prompted to login so my guess is I am not allowed to see that file on a rescue disk. (I tried the automatic rescue and that didn't work). I then made a blank modules.conf file with the hopes that it would auto populate on a reboot. No such luck. It looks like I am toasted huh?
0
 
GnsCommented:
Ok, my bad... I should have stressed more that the "e100" module was just an example. Sorry for that.

If you have that type of 3com NIC, you should be using that module, yes. The kernel panic indicates that it has some problems with the nic though (duh, Kinda obvious:-).
Do you have two NICs in that particular machine? Do you know the make and model of the NIC(s)? If you share the info, we can help hunt down particulars (as to problems and solutions particular to that exact one)...

When you boot rescue mode (either from install media (IIRC you just type rescue<Enter> at the bootprompt booted off of the install cd1) or from floppies you're running a "mini-linux" in memory, not the one on disk. So the /etc is not the one on your drive. RH9 rescue mode mounts that somewhere like /mnt/sysimage or the like. You can check what has been mounted where with the "mount" command at the prompt. You can actually "switch" to the ondisk install by issuing
chroot /mnt/sysimage
... or wherever it's mounted. This is nice, because a) you'll be able to use the tools installed on the disk (like editors etc), and b) /etc will be the /etc on disk.

I'm guessing that theither the module isn't quite right for the NIC, or it might need some options set... Or the module might not be there or something... I've never seen that exact module name .... and a google search turns up nothing.... Hm, are you sure it's "3cTX5"?

-- Glenn
0
 
GnsCommented:
Might it be a 3c905 (sometimes written as 3c9X5) endowed card? Then use the 3c905 driver;-)

-- Glenn
0
 
jlevieCommented:
3cTX5 isn't a RedHat 9 driver module.

Does the system BIOS on these systems have the ability to disable PnP mode? If so it would be a good thing to do to disable it. Having the BIOS doing PnP stuff has been know to cause all sorts of problems with Linux (and windows).

On one of these systems could you show us what 'cat /proc/pci'  and 'cat /etc/modules.conf' shows?
0
 
GnsCommented:
> 3cTX5 isn't a RedHat 9 driver module.
Haha, I typed faster! (Yeah, very mature;-)

-- Glenn (Signing off for tonight)
0
 
langdjAuthor Commented:
You guys are good. The NIC card that I used was 3c59x which is a 3Com 3C905. I was trying to give you the info from my memory. Sorry about that.

And yes their "was" too NIC cards in the machine. I took one of them out when I was troubleshooting. It was easier to deal with one. Now just one sits in the machine.

e100 is just a generic card? Still I don't understand why that line would be needed for the PC to boot (or any NIC card for that matter).

0
 
jlevieCommented:
The e100 module is used for an Intel 10/100 NIC and it should only be in the modules.conf file if kudzu had seen one of those cards.

There's no problem booting a system with no NIC in it, provided the system was configured that way. Where you'd have problems is if the system is set up for networking and a NIC is removed or changed without the appropriate reconfig. This is normally done by kudzu at boot time, but since it will prompt for changes supplying the wrong answer can leave things in a confused state.
0
 
GnsCommented:
Ah, your turn to be faster Jim:-).

I can only agree with Jim. As said, the "e100" was just an example from my side. Are we to assume that when you've set it to use the correct 3Com driver (with an "alias eth0 3c905" line in /etc/modules.conf)... Things work?

-- Glenn
0
 
langdjAuthor Commented:
Sorry about the forced accept. Thanks for closing it for me. Will try to make sure that does not happen again.
0

Featured Post

[Webinar] Kill tickets & tabs using PowerShell

Are you tired of cycling through the same browser tabs everyday to close the same repetitive tickets? In this webinar JumpCloud will show how you can leverage RESTful APIs to build your own PowerShell modules to kill tickets & tabs using the PowerShell command Invoke-RestMethod.

  • 7
  • 5
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now