Auto-negotiation issue

Kind folks,
My setup:

ISP-fiber-modem --- OpenWRT_x86
SW version: OpenWrt 19.07.8, r11364-ef56c85848,

The cable between ISP-fiber-modem and my router appears to be a joint of 2 different types of cables, but the end one is RJ45 which is plugged into OpenWRT router.

The issue I am facing is, it's taking a few attempts of cable insert and remove at the modem for the port to come up.
Otherwise it shows physical status as "off".

In the OpenWrt log I see below difference.
(Forgot to save the logs to cp-paste here)

Working iteration:
Port is first being detected as 10M half-duplex.
A few second later 100M full duplix.
Port comes UP.

Failing iteration:
Port is being detected as 10M half-duplex.
Port goes in OFF state.

At the moment I am suspecting the ISP-fiber-modem.
But are there any known issues with auto-neg?

Older installations may have only two-pair cable in the wall. This was suitable for 10 or 100 Mb, but gigabit and higher requires four-pair cable.

Connecting two gigabit devices with two-pair cable is not included in the standards. In some cases it will fall back to 100 Mb but other times it simply will not link.

You could probably use ethtool to force the x86 port to 100 Mb if the cable cannot be replaced. Another option to replacing the Ethernet cable is to buy a fiber patch cord and move the ONT close to the router.

1 Like

Let's see a picture of this cable (including the ends and the joint in the middle).

My guess is that this is not a proper ethernet cable and will never work properly.

This is a very old version of OpenWrt. This isn't the reason you are having issues with your auto-negotiation, but there are many known security vulnerabilities in this old and unpatched version, and it is unsupported. You should upgrade to 23.05 (the latest), especially because you are using an x86 device which certainly has no limitation here.

2 Likes