Intel NIC set to 100Mbit Full Duplex still negotiates to 100Mbit Half Duplex

Started by JeroenS, March 31, 2025, 01:10:22 PM

Previous topic - Next topic
Recently I noticed the upload speed was way down to a couple of Mbit instead of the 100Mbit we have available from our ISP.

Connecting a laptop and setting it to 100Mbit Full Duplex, i am able to get the maximum speeds. (ISP requested this to rule out problems on their side)

Divng in to the Firewall, I found that there are a lot of send-errors and collisions:

[WAN] (igb1) / xx:xx:xx:xx:xx:xx
name: igb1
flags: 0x8843
mtu: 1500
network: <Link#2>
address xx:xx:xx:xx:xx:xx
received-packets: 661199209
received-errors: 7864642
dropped-packets: 0
received-bytes: 285018281085
sent-packets: 1126089150
send-errors: 8085228
sent-bytes: 1554259770561
collisions: 34849771

This indicates that the WAN interface is running in Half Duplex even tough it is configured to 100Mbit Full Duplex.
In Full Duplex mode a collision is not possible and therefore the counter should be 0.


This remindes me of an earlier problem:
The Intel network card cannot work in full-duplex mode. In half-duplex mode

For some reason an interface set to a fixed Duplex mode and speed, was still doing auto negotiation (which fails as the other network switch is also configured to fixed 100Mbit Full Duplex and auto negotiation is disabled and falls back to Half Duplex.)

My provider will not budge to enable auto negotiation and they use this to limit our maximum speed.

Did somebody push again for enabling auto negotiation for all speeds and not 1Gbit and higher?

@franco,

Might this be de cause what i am running in to?

https://reviews.freebsd.org/rGbceec3d80a3caf9249e24247fb937674bf5b46b5

The description of this change assumes the other side has auto negotiation enabled.
But in my case and the default behavior of may different types of network equipment is that if auto negotiation fails, it will fall back to Half Duplex.

I my case if I select 100Mbit full duplex because that is what the ISP has told me by phone/e-mail (negotiated wit me).

Forgot to mention. The below the current version.
Versions
OPNsense 25.1.4_1-amd64
FreeBSD 14.2-RELEASE-p2
OpenSSL 3.0.16
Updates
Click to check for updates.
Uptime
11 days, 11:58:56
Load average
0.53, 0.54, 0.52
Current date/time
Tue Apr 1 8:51:34 CEST 2025
Last configuration change
Mon Mar 31 12:33:52 CEST 2025