weird network issue

This is my first post. I’m somewhere between a Linux noob and an intermediate. I’ve been using openSUSE since July and love it. My wireless card has worked flawlessly at home, but I just tried the wired NIC yesterday for the first time at work.

I am having weird network issues. I think the problem is with my NIC. I have an MSI VR-705 laptop and the NIC (per hwinfo --netcard) is a Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller. The driver (per hwinfo --netcard) is r8169. I can post all of the hwinfo output if it’s useful to anyone.

I can run a simple test to ask my Linksys router for its config page, where my IP is 10.100.1.103:
always successful:
wget 10.100.1.1 --http-user admin --http-password password
always times out, always after exactly 5652 bytes:
wget 10.100.1.1/home.htm --http-user admin --http-password password

Both of the above tests always work on a different machine, so I know it is not the router.

I can run that test against pretty much any site on the Internet, and the result doesn’t change (I get 5652 bytes and then it times out). If success, always sucess. If timeout, always timeout after 5652 bytes.

The mysql client will only work with the -A option, perhaps because using that option results in < 5652 bytes of network traffic. That’s how I found this problem – go to work and the mysql client would connect but hang.

I’ve tried different cables, different ports on the switch, different switches. The only thing that seems to work is to connect directly to the DSL modem using manually-configured static IP (my ISP has given me five, one of which was not in use, which I am using to post this thread). In other words, I have to bypass the switch and router.

Is this worth troubleshooting? Is there a way I can use tcpdump or any other diagnostic tool to see what might be the problem?

I’ve already pulled all my hair out troubleshooting this. I’ll have to find something else to pull on… Maybe a beer – it’s 5:00 somewhere.

Thanks!

Hi,

just to make sure I understood everything right:

  1. The net works at home without any problems. (Wired also or only wifi?)
  2. On both networks you get an IP via DHCP?
  3. On the office network the connection to the router always times out when trying to get the config page.
  4. Sometimes other pages work sometimes not (the same pages?).
  5. In case it doesn’t work the time out comes up after the same amount of bytes.

Ok, if this is correct we can exclude any modul and hw-problems with your nic since at home it works.

Give me some more informations:

  1. Network Manager or ifup? Post the config file here:

/etc/sysconfig/network/icfg-eth0

  1. Do the following:

Ping the router in some different ways until it doesn’t work any longer. First do a normal ping. After that do pings with several package sizes. Also do a broadcast ping with several package sizes (you must be root). To know how to do this just type man ping on a console. ;). Please only tell me which one didn’t work properly and post the statistic message at the end here (NOT the whole result).

  1. Also interesting is the following:

ifconfig -a

in both cases at home and at work.

That’s it at the moment. Let’s see if this will bring us the solution or if we have to run some more tests.

Bye

Erik

The problem ended up being TCP window scaling, which my router at the office does not support but is supported by the router at home. That explains why everything worked at home but not at the office. I tried 4 different NICs from 4 different manufactuers in two different computers. That was when I realized “this router does NOT like Linux!” which sounded absurd until I found this post:

Re: RV082 and fedora core 6, Debian Etch problem - Wired Routers - Linksys Community Forums

I verified it by doing this:

success:
echo 0 > /proc/sys/net/ipv4/tcp_window_scaling
wget 10.100.1.1/home.htm --http-user xxx --http-password yyy

fail:
echo 1 > /proc/sys/net/ipv4/tcp_window_scaling
wget 10.100.1.1/home.htm --http-user xxx --http-password yyy

I repeated a few times to be sure I had it right, and then I added:
net.ipv4.tcp_default_win_scale = 0
to
/etc/sysctl.conf

Hi,

that’s really weird. I would change the router. :wink:

Bye

Erik