[nSLUG] Router won't do 100mbps locally

Jason Kenney jdkenney at gmail.com
Thu Feb 4 09:51:00 AST 2010

You're getting your stacks mixed up.  ECN is a feature of TCP, which
runs over IP.  If you are not getting an IP, that may just mean there
is something wrong with DHCP (assuming that is what you are using, you
don't say).

But from your description it sounds more like the Ethernet link
doesn't come up.  If you have a duplex/speed mismatch you can still
get some, albeit slow connectivity between them.

Try checking the interface stats with ifconfig on the server.  Do you
see a lot of collisions or errors?  In general I would not bother with
using ethtool to unset auto-negotiation unless there's a clear problem
with doing so.  Especially since you can't set the router side - it's
really meant to be used by both ends of the connection I believe.

I'd put autoneg back on and check the cables and the hardware first.
I get the feeling these ethernet interfaces might be used, and maybe
not entirely trustworthy?


On Thu, Feb 4, 2010 at 3:26 AM, Mike Spencer <mspencer at tallships.ca> wrote:
> So I finally got two computers with network cards that support
> 100baseT and which are responsive to ethtool.  They're cable-connected
> to a D-Link DI-713P router (advertised as 10baseT and 100baseT
> compliant.)
> So, with ethtool, I force both cards to "autoneg off duplex full speed
> 100".  The blinkenlights on the router go into continuous twiddle
> mode.  No packets are detected by tcpdump.  So the cards are trying to
> establish a 100Mbps connection with the router at the Ethernet level
> (right?)  and failing (right?).
> While this state continues, neither host is reachable from the other.
> A similar condition arises if I let the cards auto-negotiate. The
> blinkenlight twiddle never stops and no IP connection can be made
> between computers.
> Resetting the cards with "ethtool....speed 10" results in a connection
> with an actual transfer rate (by calculation from a quickie script) of
> 9.1Mbps.
> Is there some arcanum that I need to know?
>         Example arcanum that I ruled out:
>         Older routers may not support Explicit Congestion
>         Notification (RFC 3168) but sysctl shows this disabled in my
>         2.4 kernel and source code shows it as a disabled option in
>         the driver module.
> Or is the best surmise that the router is failing (more or less)
> gracefully?
> The router's admin interface doesn't have any means to force it to a
> particular speed.
> FWIW, here's the tech info
>  root# ethtool eth0
>  Settings for eth0:
>    Supported ports: [ TP MII ]
>    Supported link modes:   10baseT/Half 10baseT/Full
>                            100baseT/Half 100baseT/Full
>    Supports auto-negotiation: Yes
>    Advertised link modes:  10baseT/Half 10baseT/Full
>                            100baseT/Half 100baseT/Full
>    Advertised auto-negotiation: No
>    Speed: 10Mb/s
>    Duplex: Full
>    Port: MII
>    PHYAD: 1
>    Transceiver: internal
>    Auto-negotiation: off
>    Current message level: 0x000020c1 (8385)
>    Link detected: yes
> [Same for both cards. Everything works at ca. 10Mbps with these settings.]
>  bogus-root# lspci |grep Ethernet
>    01:08.0 Ethernet controller: Intel Corp. 82801BA/BAM/CA/CAM Ethernet
>            Controller (rev 01)
>  nudel-root# lspci |grep Ethernet
>    01:08.0 Ethernet controller: Intel Corporation 82562EZ 10/100 Ethernet
>            Controller (rev 02)
> Modules [both boxen]:
>     eepro100
>     mii         [eepro100]
> Advice? TIA,
> - Mike
> --
> Michael Spencer                  Nova Scotia, Canada       .~.
>                                                           /V\
> mspencer at tallships.ca                                     /( )\
> http://home.tallships.ca/mspencer/                        ^^-^^
> _______________________________________________
> nSLUG mailing list
> nSLUG at nslug.ns.ca
> http://nslug.ns.ca/mailman/listinfo/nslug

More information about the nSLUG mailing list