Click to See Complete Forum and Search --> : No link for eth0


clh333
07-07-2005, 10:54 AM
I am a Linux newbie running Fedora Core 3 on a newly-constructed machine with AMD Sempron 2400, Abit board, and 1 Gb DDR memory. Anaconda install completed without error and all hardware was recognized, but on bootup the system reports that eth0 initialize failed. Eth0 is an on-board LAN Chip, VIA chipset. It is enabled as far as the BIOS is concerned.

I am attempting to network this machine with an existing (peer-to-peer) network of WinXX machines, wired and wirelessly connceted through a DLink DI-624 router. The router is connected to the Internet through a cable modem. Adlephia is my ISP. Adelphia assigns the cable modem its IP address, and the cable modem assigns an IP address to the router. The router assigns IP addresses to the LAN machines, and this much has been working reliably. However, the router does not recognize the Linux machine.

I tried substituting CAT 5 cables and am sure these cables were operational previously. Under KDE desktop I entered the network configuration utility. I made sure that DHCP was selected and entered the name and IP address of the router as the gateway. Attempts to start the interface failed again.

As super-user I opened a terminal session and, following the text of the Red Hat Linux Bible, pp. 596-598, tried diagnostics:

[root@DI-624 clh333]# dmesg | grep eth
divert: not allocating divert_blk for non-ethernet device lo
divert: allocating divert_blk for eth0
eth0: VIA Rhine II at 0xee027000, 00:50:2c:06:d9:f6, IRQ 11.
eth0: MII PHY found at address 1, status 0x7809 advertising 01e1 Link 0000.
divert: not allocating divert_blk for non-ethernet device sit0
eth0: link down
eth0: link down
eth0: link down
[root@DI-624 clh333]# ping DI-624
connect: Network is unreachable
[root@DI-624 clh333]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1956 errors:0 dropped:0 overruns:0 frame:0
TX packets:1956 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2182970 (2.0 MiB) TX bytes:2182970 (2.0 MiB)

[root@DI-624 clh333]# /etc/init.d/network restart
Shutting down loopback interface: [ OK ]
Setting network parameters: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0:
Determining IP information for eth0... failed; no link present. Check cable?
[FAILED]
[root@DI-624 clh333]#

I noticed I had the local machine name entered wrong. I fixed that and tried again, also trying a Ping command and ifconfig:

[root@Dragon clh333]# dmesg | grep eth
divert: not allocating divert_blk for non-ethernet device lo
divert: allocating divert_blk for eth0
eth0: VIA Rhine II at 0xee027000, 00:50:2c:06:d9:f6, IRQ 11.
eth0: MII PHY found at address 1, status 0x7809 advertising 01e1 Link 0000.
divert: not allocating divert_blk for non-ethernet device sit0
eth0: link down
eth0: link down
eth0: link down
eth0: link down
eth0: link down
eth0: link down
eth0: link down
[root@Dragon clh333]# man dmesg
Formatting page, please wait...
[root@Dragon clh333]# ping 192.168.0.1
connect: Network is unreachable
[root@Dragon clh333]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2216 errors:0 dropped:0 overruns:0 frame:0
TX packets:2216 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2200687 (2.0 MiB) TX bytes:2200687 (2.0 MiB)

[root@Dragon clh333]# cat /proc/net/dev
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 2200687 2216 0 0 0 0 0 0 2200687 2216 0 0 0 0 0 0
eth0: 0 0 0 0 0 0 0 0 208627 0 0 0 0 0 0
sit0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[root@Dragon clh333]# cat /proc/net/dev
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 2200687 2216 0 0 0 0 0 0 2200687 2216 0 0 0 0 00
eth0: 0 0 0 0 0 0 0 0 2086 27 0 0 0 0 00
sit0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00
[root@Dragon clh333]#

On the theory that the driver might be at fault, I went to the VIA site and downloaded the newest driver and instllation instructions. Via says I have the right driver (via_rhine) and that Red hat installs it automatically. I checked lsmod:

[root@Dragon clh333]# lsmod
Module Size Used by
vfat 14785 1
fat 45409 1 vfat
parport_pc 24705 1
lp 11565 0
parport 41737 2 parport_pc,lp
autofs4 24005 0
i2c_dev 10433 0
i2c_core 22081 1 i2c_dev
sunrpc 160421 1
ipt_REJECT 6465 1
ipt_state 1857 3
ip_conntrack 40693 1 ipt_state
iptable_filter 2753 1
ip_tables 16193 3 ipt_REJECT,ipt_state,iptable_filter
button 6481 0
battery 8517 0
ac 4805 0
md5 4033 1
ipv6 232577 8
ohci1394 35033 0
ieee1394 302869 1 ohci1394
uhci_hcd 31449 0
ehci_hcd 31557 0
snd_cmipci 35173 0
snd_pcm_oss 47609 0
snd_mixer_oss 17217 1 snd_pcm_oss
snd_pcm 97993 2 snd_cmipci,snd_pcm_oss
snd_page_alloc 9673 1 snd_pcm
snd_opl3_lib 11201 1 snd_cmipci
snd_timer 29765 2 snd_pcm,snd_opl3_lib
snd_hwdep 9413 1 snd_opl3_lib
gameport 4801 1 snd_cmipci
snd_mpu401_uart 8769 1 snd_cmipci
snd_rawmidi 26725 1 snd_mpu401_uart
snd_seq_device 8137 2 snd_opl3_lib,snd_rawmidi
snd 54053 10 snd_cmipci,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_o pl3_lib,snd_timer,snd_hwdep,snd_mpu401_uart,snd_ra wmidi,snd_seq_device
soundcore 9889 1 snd
via_rhine 23497 0
mii 4673 1 via_rhine
floppy 58609 1
dm_snapshot 17029 0
dm_zero 2369 0
dm_mirror 23341 2
ext3 116809 1
jbd 74969 1 ext3
dm_mod 54741 6 dm_snapshot,dm_zero,dm_mirror
[root@Dragon clh333]#

The driver seems to be present. At this point I have exhausted my knowledge. If anyone can point me in the right direction I would be grateful. I have two other options: to install another NIC or to attach a wireless card, but that is beside the point. I need to be able to find out what has gone wrong so I can deal with the problem the next time it arises.

Thank you in advance for your replies.

Charles Hudson
clh333@adelphia.net

jumpedintothefire
07-07-2005, 11:23 AM
post the output of "/sbin/mii-tool -vv"

clh333
07-07-2005, 12:39 PM
Thank you for your suggestion. Here are the results:

[root@Dragon sbin]# dir mii-tool
mii-tool
[root@Dragon sbin]# mii-tool -w
SIOCGMIIPHY on 'eth0' failed: Invalid argument
no MII interfaces found
[root@Dragon sbin]# mii-tool -vv
SIOCGMIIPHY on 'eth0' failed: Invalid argument
no MII interfaces found
[root@Dragon sbin]# mii-tool
SIOCGMIIPHY on 'eth0' failed: Invalid argument
no MII interfaces found
[root@Dragon sbin]#

No MII interface = no link?

-CH-

jumpedintothefire
07-07-2005, 12:57 PM
"MII PHY found at address 1" and "no MII interfaces found" is a bit strange.
Can you get the exact chipset number for the nic, or a link to the motherboard?

Icarus
07-07-2005, 01:31 PM
I get the same error on my desktop using a cheap winbound NIC, ethtool doesn't see my card either...but the NIC it self works fine.
It is very possible that your NIC is on the list of unsupported cards for mii-tool and/or ethtool

I've heard rumors that recompiling mii-tool or ethtool for the specific NIC works, but I have no idea how to go about doing that

clh333
07-07-2005, 01:53 PM
The motherboard is an Abit KW7, with a VIA KT880 chipset. Attached is a link to Abit and one to VIA:

http://www.abit-usa.com/products/mb/products.php?categories=1&model=210

http://www.via.com.tw/en/products/chipsets/k7-series/kt880/

More specifics than this I do not know... However, meanwhile I can throw in a spare PCI Netgear NIC and see what happens, on the hypothesis that there is problem communicating with the chip itself. I haven't been through a recompile yet (gulp!)

-CH-

clh333
07-07-2005, 02:02 PM
Thinking about the chipset issue, I researched VIA's forum for Linux users, and searched for "eth0". I found others have had trouble with the interface as well:

http://forums.viaarena.com/messageview.aspx?catid=28&threadid=55139&highlight_key=y&keyword1=eth0

-CH-

jumpedintothefire
07-07-2005, 02:30 PM
post the output of '/sbin/lspci'

Have you tried booting with "noapic"?
to do so edit grub.conf:
adding "noapic" to the append line.

clh333
07-07-2005, 07:18 PM
I want to thank those who responded to my inquiry, to apologize for wasting their time and to explain that I have found the solution to my problem, plus lots more.

It was the cable(s), the ones I was sure were good, which were at the root of the problem. They were defective. Fortunately, I had several spares on hand.

D-Link technical support suggested that I test my cables using the following trick: plug one end into the WAN port and the other into a LAN port on the DI-624 router. If a LAN port light comes on, the cable is OK. If not, suspect the cable.

All it took was replacing the cable, and I am now connected via the formerly recalcitrant machine. No other configuration was necessary.

In the process I found out a lot about the Linux community and about resources available. I learned something about Linux configuration and I found out about Ubuntu. I think I like their approach better than that of Red Hat, and I will investigate them further.

Thanks again to all who took the time to write.

-CH-