My firewall (FC1) had a 3COM 3c900B and a 3c905b, the former being the outside interface and only running at 10/half. I was seeing collisions that were making my VoIP run poorly, so I decided to swap it out with another 3c905b. And, for some reason, mii-tool reported eth0 as always having no link status, the interface never showed as RUNNING, and I had to ifconfig eth0 UP manually all the time, but it worked.
I replaced the 900b with the 905 and it didn't work. The interface showed up and was detected, but I couldn't get a DHCP address. Kudzu found it though.
Long story short, I even went so far as replacing both cards with intel e100s, but the same behaviour was seen for the card in eth0. No link, no DHCP, -UP -RUNNING. No matter which card was eth0, no matter which interrupt I had it on.
Finally, I put 3 NICs in and am running off of eth1/eth2 and it works fine.
I have no clue why this is happening. I wiped any trace of network stuff in /etc/mod*, rebuilt the initrd, and grepped under /etc for any mention of eth0. It even does this in single user mode. No kernel paramaters either, and I'm running the latest FC1 kernel from Legacy.
Any idea where else to look for this configuration?
Thanks,
Sean