NIC Not Working In 10.1 - Cannot Ping Router, Access Internet
SUSE / openSUSEThis Forum is for the discussion of Suse Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
NIC Not Working In 10.1 - Cannot Ping Router, Access Internet
Scoured many, many forums, but nothing I've tried works. Here's the situation:
Installed 10.1 yesterday, during the install, I failed the network test. I've been playing around with the Network Card in YAST - trying different settings, but to no avail. My router (Belkin FSD7230)is configured as a DHCP server, and I know the NIC (3Com 3c905 100BaseTX [Boomerang]) is functioning properly because I also have Windows ME installed (dual-boot) and I've have not experienced any issues. Here are the results for the following shell commands with DHCP enabled:
PINGING ROUTER
linux-31c3:~ # ping 192.168.2.1
connect: Network is unreachable
IFSTATUS
linux-31c3:~ # ifstatus eth0
eth0 device: 3Com Corporation 3c905 100BaseTX [Boomerang]
eth0 configuration: eth-id-00:60:08:c2:7e:71
eth0 dhcpcd is still waiting for data
eth0 is up
2: eth0: <BROADCAST,MULTICAST,NOTRAILERS,UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:60:08:c2:7e:71 brd ff:ff:ff:ff:ff:ff
inet6 fe80::260:8ff:fec2:7e71/64 scope link
valid_lft forever preferred_lft forever
I read that I should try and set the NIC to a Static IP using the Gateway/DNS information for the router, so I tried that using the following information:
When I first tried to ping the router, it lost many packets, but a couple made it through (although response time was over 1000ms in some cases). Excitedly, I tried to access an external IP, but no luck, so I ran the shell commands again and got the following:
IFSTATUS
linux-31c3:~ # ifstatus eth0
eth0 device: 3Com Corporation 3c905 100BaseTX [Boomerang]
eth0 configuration: eth-id-00:60:08:c2:7e:71
eth0 is up
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:60:08:c2:7e:71 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.5/24 brd 192.168.2.255 scope global eth0
inet6 fe80::260:8ff:fec2:7e71/64 scope link
valid_lft forever preferred_lft forever
eth0 IP address: 192.168.2.5/24
Configured routes for interface eth0:
169.254.0.0 - 255.255.0.0 eth0
Active routes for interface eth0:
192.168.2.0/24 proto kernel scope link src 192.168.2.5
169.254.0.0/16 scope link
1 of 1 configured routes for interface eth0 up
IFUP
linux-31c3:~ # ifup eth0
eth0 device: 3Com Corporation 3c905 100BaseTX [Boomerang]
eth0 configuration: eth-id-00:60:08:c2:7e:71
SuSEfirewall2: Warning: ip6tables does not support state matching. Extended IPv6 support disabled.
SuSEfirewall2: Setting up rules from /etc/sysconfig/SuSEfirewall2 ...
SuSEfirewall2: batch committing...
SuSEfirewall2: Firewall rules successfully set
IFDOWN
linux-31c3:~ # ifdown eth0
eth0 device: 3Com Corporation 3c905 100BaseTX [Boomerang]
eth0 configuration: eth-id-00:60:08:c2:7e:71
SuSEfirewall2: Warning: ip6tables does not support state matching. Extended IPv6 support disabled.
SuSEfirewall2: Setting up rules from /etc/sysconfig/SuSEfirewall2 ...
SuSEfirewall2: Warning: no interface active
SuSEfirewall2: batch committing...
SuSEfirewall2: Firewall rules successfully set
The weird thing was after I ran these commands, I tried to ping the router again, but this time it said the network was unavailable. Not sure what happenned there, but regardless, the situation has not changed much.
So, Linux gurus, do you have any advice as to how to resolve this? Thanks!
could you paste in the output of the command iptables -L -v
Here you go...
Chain INPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
63 5134 ACCEPT all -- lo any anywhere anywhere
0 0 ACCEPT all -- any any anywhere anywhere state RELATED,ESTABLISHED
0 0 input_int all -- eth0 any anywhere anywhere
0 0 input_ext all -- any any anywhere anywhere
0 0 LOG all -- any any anywhere anywhere limit: avg 3/min burst 5 LOG level warning tcp-options ip-options prefix `SFW2-IN-ILL-TARGET '
0 0 DROP all -- any any anywhere anywhere
Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 LOG all -- any any anywhere anywhere limit: avg 3/min burst 5 LOG level warning tcp-options ip-options prefix `SFW2-FWD-ILL-ROUTING '
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
63 5134 ACCEPT all -- any lo anywhere anywhere
0 0 ACCEPT all -- any any anywhere anywhere state NEW,RELATED,ESTABLISHED
0 0 LOG all -- any any anywhere anywhere limit: avg 3/min burst 5 LOG level warning tcp-options ip-options prefix `SFW2-OUT-ERROR '
Chain forward_ext (0 references)
pkts bytes target prot opt in out source destination
Chain forward_int (0 references)
pkts bytes target prot opt in out source destination
Chain input_ext (1 references)
pkts bytes target prot opt in out source destination
0 0 DROP all -- any any anywhere anywhere PKTTYPE = broadcast
0 0 ACCEPT icmp -- any any anywhere anywhere icmp source-quench
0 0 ACCEPT icmp -- any any anywhere anywhere icmp echo-request
0 0 ACCEPT icmp -- any any anywhere anywhere state RELATED,ESTABLISHED icmp echo-reply
0 0 ACCEPT icmp -- any any anywhere anywhere state RELATED,ESTABLISHED icmp destination-unreachable
0 0 ACCEPT icmp -- any any anywhere anywhere state RELATED,ESTABLISHED icmp time-exceeded
0 0 ACCEPT icmp -- any any anywhere anywhere state RELATED,ESTABLISHED icmp parameter-problem
0 0 ACCEPT icmp -- any any anywhere anywhere state RELATED,ESTABLISHED icmp timestamp-reply
0 0 ACCEPT icmp -- any any anywhere anywhere state RELATED,ESTABLISHED icmp address-mask-reply
0 0 ACCEPT icmp -- any any anywhere anywhere state RELATED,ESTABLISHED icmp protocol-unreachable
0 0 ACCEPT icmp -- any any anywhere anywhere state RELATED,ESTABLISHED icmp redirect
0 0 reject_func tcp -- any any anywhere anywhere tcp dpt:ident state NEW
0 0 LOG all -- any any anywhere anywhere limit: avg 3/min burst 5 PKTTYPE = multicast LOG level warning tcp-options ip-options prefix `SFW2-INext-DROP-DEFLT '
0 0 DROP all -- any any anywhere anywhere PKTTYPE = multicast
0 0 LOG tcp -- any any anywhere anywhere limit: avg 3/min burst 5 tcp flags:FIN,SYN,RST,ACK/SYN LOG level warning tcp-options ip-options prefix `SFW2-INext-DROP-DEFLT '
0 0 LOG icmp -- any any anywhere anywhere limit: avg 3/min burst 5 LOG level warning tcp-options ip-options prefix `SFW2-INext-DROP-DEFLT '
0 0 LOG udp -- any any anywhere anywhere limit: avg 3/min burst 5 LOG level warning tcp-options ip-options prefix `SFW2-INext-DROP-DEFLT '
0 0 LOG all -- any any anywhere anywhere limit: avg 3/min burst 5 state INVALID LOG level warning tcp-options ip-options prefix `SFW2-INext-DROP-DEFLT-INV '
0 0 DROP all -- any any anywhere anywhere
Chain input_int (1 references)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- any any anywhere anywhere
Chain reject_func (1 references)
pkts bytes target prot opt in out source destination
0 0 REJECT tcp -- any any anywhere anywhere reject-with tcp-reset
0 0 REJECT udp -- any any anywhere anywhere reject-with icmp-port-unreachable
0 0 REJECT all -- any any anywhere anywhere reject-with icmp-proto-unreachable
gr8, I dont think I can go through all the rules.
you'd want to stop the firewall and then check if your ipaddress is set right and then ping the gateway.
In doing some more research, it appears that the culprit might be the autoconfiguration by YAST of the NIC. I indicated earlier that the card works properly in my WinME boot, so I looked up the speed and duplex information, and I see that it's configured as 10BaseT Full Duplex. I believe the 3c59x driver has forced the configuration to be 100BaseTX Full Duplex. I would like to try to set this to 10BaseT; I tried setting an option under Hardware Profile as mediatype=10BaseT but that did not work.
Can anyone tell me how this can be done properly or say whether or not I'm on the right path?
The latest hypothesis is this: it appears looking at the options for the 3c59x driver used by the NIC that there is an problem with the driver and some Compaq BIOSes. It so happens that my install is on a Compaq Presario, so that might be the culprit. Attached below is the modinfo for the driver.
My question is: does anyone know how to set the parameters to enable the workaround?
modinfo 3c59x
parm: use_mmio:3c59x: use memory-mapped PCI I/O resource (0-1) (array of int)
parm: global_use_mmio:3c59x: same as use_mmio, but applies to all NICs if options is unset (int)
parm: watchdog:3c59x transmit timeout in milliseconds (int)
parm: compaq_device_id:3c59x PCI device ID (Compaq BIOS problem workaround) (int)
parm: compaq_irq:3c59x PCI IRQ number (Compaq BIOS problem workaround) (int)
parm: compaq_ioaddr:3c59x PCI I/O base address (Compaq BIOS problem workaround) (int)
parm: max_interrupt_work:3c59x maximum events handled per interrupt (int)
parm: rx_copybreak:3c59x copy breakpoint for copy-only-tiny-frames (int)
parm: enable_wol:3c59x: Turn on Wake-on-LAN for adapter(s) (0-1) (array of int)
parm: global_enable_wol:3c59x: same as enable_wol, but applies to all NICs if enable_wol is unset (int)
parm: flow_ctrl:3c59x 802.3x flow control usage (PAUSE only) (0-1) (array of int)
parm: hw_checksums:3c59x Hardware checksum checking by adapter(s) (0-1) (array of int)
parm: full_duplex:3c59x full duplex setting(s) (1) (array of int)
parm: global_full_duplex:3c59x: same as full_duplex, but applies to all NICs if full_duplex is unset (int)
parm: options:3c59x: Bits 0-3: media type, bit 4: bus mastering, bit 9: full duplex (array of int)
parm: global_options:3c59x: same as options, but applies to all NICs if options is unset (int)
parm: debug:3c59x debug level (0-6) (int)
Thanks to the help of some other members, we figured this out. I knew I had some issues with this card not being able to support 10/100 on Windows, so there I set the driver to 10M Full; and it worked. Using ethtool, I was able to set it up properly and now I can ping my router and Yahoo!!
So, for posteriety's sake, here's what I did:
Went into YAST
Clicked Software Management under the Software tab
Searched for "NetTools" (ethtool is included in it) and installed it - requires Install CD4
Clicked Accept or Finish to save changes
Open up a terminal
su -
<root password>
ifdown eth0
ethtool -s eth0 autoneg off speed 10 duplex full
ifup eth0
Still need to figure out what to do to set this up automatically on boot, but that shouldn't take long. Will post results here.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.