LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   SUSE / openSUSE (https://www.linuxquestions.org/questions/suse-opensuse-60/)
-   -   NIC Not Working In 10.1 - Cannot Ping Router, Access Internet (https://www.linuxquestions.org/questions/suse-opensuse-60/nic-not-working-in-10-1-cannot-ping-router-access-internet-481074/)

contillion 09-06-2006 06:50 PM

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

IFUP
linux-31c3:~ # ifup eth0
eth0 device: 3Com Corporation 3c905 100BaseTX [Boomerang]
eth0 configuration: eth-id-00:60:08:c2:7e:71
DHCP client is already running on eth0

IFDOWN
linux-31c3:~ # ifdown eth0
eth0 device: 3Com Corporation 3c905 100BaseTX [Boomerang]
eth0 configuration: eth-id-00:60:08:c2:7e:71

IFCONFIG
linux-31c3:~ # ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:60:08:C2:7E:71
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:10 errors:3 dropped:0 overruns:0 frame:4
TX packets:289 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:752 (752.0 b) TX bytes:32840 (32.0 Kb)
Interrupt:5 Base address:0x2440



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:

Default Gateway: 192.168.2.1
DNS: 192.168.2.1
Static IP: 192.168.2.5
Subnet: 255.255.255.0

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

IFCONFIG
linux-31c3:~ # ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:60:08:C2:7E:71
inet addr:192.168.2.5 Bcast:192.168.2.255 Mask:255.255.255.0
inet6 addr: fe80::260:8ff:fec2:7e71/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:10 errors:3 dropped:0 overruns:0 frame:4
TX packets:260 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:752 (752.0 b) TX bytes:27690 (27.0 Kb)
Interrupt:5 Base address:0x2440

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!

w3bd3vil 09-06-2006 07:30 PM

could you paste in the output of the command iptables -L -v

contillion 09-06-2006 07:47 PM

Quote:

Originally Posted by w3bd3vil
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

w3bd3vil 09-06-2006 07:50 PM

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.

contillion 09-07-2006 12:03 AM

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?

contillion 09-07-2006 01:19 AM

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)

contillion 09-08-2006 02:46 PM

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.


All times are GMT -5. The time now is 06:59 PM.