[Solved] Unifi switches autonegotiating to 100/half

HI all,

I’m having a bit of an issue with some of my network gear. I’ve got a bunch of short runs (<15ft) on a mix of CAT5E and CAT6 that’s been autonegotiating to 100 HDX. I’m encountering this on both a Unifi Switch 24 and a Unifi Switch 8. Moving to a different port (switch or device) doesn’t help and the links worked fine on an older Netgear dumb switch. Different cables also do not help.

I’m far from a networking pro, so I’m looking for some troubleshooting advice first.

EDIT: I was able to set link speed to 1000 FDX with ethtool -s enp11s0 speed 1000 duplex full, but that’s not sticking over a reboot.

What kind of end device are there. Just PCs?

Devices that are misbehaving are both Linux systems. Asrock Taichi on one, supermicro somethingorother on the other.

Oh wait, there is one dlink dumb switch that’s misbehaving as well. That’s on a 150ish ft run though.

What happens if you put the netgear inline?

Unifi -> netgear -> device

1 Like

Getting 1000/full on the Unifi -> Netgear

getting 100/half on Netgear -> device now… That’s odd. Yes, I have tried different (new) cables.

ethtool enp11s0
Settings for enp11s0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Full 
        Supported pause frame use: Symmetric
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  Not reported
        Advertised pause frame use: Symmetric
        Advertised auto-negotiation: No
        Advertised FEC modes: Not reported
        Speed: 100Mb/s
        Duplex: Half
        Port: Twisted Pair
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: off
        MDI-X: on (auto)
Cannot get wake-on-lan settings: Operation not permitted
        Current message level: 0x00000007 (7)
                               drv probe link
        Link detected: yes

I’m not familiar with the unifi product but there should be a way to check port stats, port utilization and port errors. May shed some light on some issue.

I’ll poke around over SSH to see if I can get anything.

Is most of the negotiation control is usually handled by the NIC’s firmware or is it done by the network control software?

Don’t make my mistakes and forget to take the netgear out of circuit before checking logs.

LOL I won’t.

May 21 12:05:00 OfficeSwitch2ndfloor user.notice syswrapper: [apply-config] using fast apply
May 21 12:07:54 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Down: 0/2
May 21 12:07:54 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (2) inst(0) role changing from ROLE_DESIGNATED to ROLE_DISABLED
May 21 12:07:57 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Up: 0/2
May 21 12:07:57 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (2) inst(0) role changing from ROLE_DISABLED to ROLE_DESIGNATED
May 21 12:13:28 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (2) inst(0) role changing from ROLE_DESIGNATED to ROLE_DISABLED
May 21 12:13:28 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Down: 0/2
May 21 12:13:35 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Up: 0/4
May 21 12:13:35 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (4) inst(0) role changing from ROLE_DISABLED to ROLE_DESIGNATED
May 21 12:13:39 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Down: 0/4
May 21 12:13:39 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (4) inst(0) role changing from ROLE_DESIGNATED to ROLE_DISABLED
May 21 12:13:44 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Up: 0/2
May 21 12:13:44 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (2) inst(0) role changing from ROLE_DISABLED to ROLE_DESIGNATED
May 21 12:15:06 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (7) inst(0) role changing from ROLE_DESIGNATED to ROLE_DISABLED
May 21 12:15:06 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Down: 0/7
May 21 12:15:10 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Up: 0/7
May 21 12:15:10 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (7) inst(0) role changing from ROLE_DISABLED to ROLE_DESIGNATED
May 21 12:15:15 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (2) inst(0) role changing from ROLE_DESIGNATED to ROLE_DISABLED
May 21 12:15:15 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Down: 0/2
May 21 12:15:18 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Up: 0/5
May 21 12:15:18 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (5) inst(0) role changing from ROLE_DISABLED to ROLE_DESIGNATED
May 21 12:15:21 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (5) inst(0) role changing from ROLE_DESIGNATED to ROLE_DISABLED
May 21 12:15:21 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Down: 0/5
May 21 12:15:24 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Up: 0/2
May 21 12:15:24 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (2) inst(0) role changing from ROLE_DISABLED to ROLE_DESIGNATED
May 21 12:18:50 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (2) inst(0) role changing from ROLE_DESIGNATED to ROLE_DISABLED
May 21 12:18:50 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Down: 0/2
May 21 12:18:53 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Up: 0/2
May 21 12:18:53 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (2) inst(0) role changing from ROLE_DISABLED to ROLE_DESIGNATED
May 21 13:06:31 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Up: 0/4
May 21 13:06:31 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (4) inst(0) role changing from ROLE_DISABLED to ROLE_DESIGNATED
May 21 13:06:32 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (4) inst(0) role changing from ROLE_DESIGNATED to ROLE_DISABLED
May 21 13:06:32 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Down: 0/4
May 21 13:06:34 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (2) inst(0) role changing from ROLE_DESIGNATED to ROLE_DISABLED
May 21 13:06:34 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Down: 0/2
May 21 13:06:45 OfficeSwitch2ndfloor daemon.notice switch: TRAPMGR: Link Up: 0/4
May 21 13:06:45 OfficeSwitch2ndfloor daemon.info switch: DOT1S: Port (4) inst(0) role changing from ROLE_DISABLED to ROLE_DESIGNATED

This is the output. Clearly not very helpful.

Port 2 is my workstation, port 4 is the port I used to connect the Netgear, port 7 is the management interface for my server, I was having trouble with the server grabbing DHCP, but I guess the server just hadn’t come up yet.


EDIT: I’m an idiot.

idiot

I don’t know how that got set, but checking the allow auto-negotiation setting solved my workstation.

2 Likes

When in doubt, factory default.

1 Like

Yeah, that’s actually in network-manager on my workstation. I guess I’d let a couple settings slip through the cracks.

Thanks for participating in this exercise in humility.

Usually how it goes. I’ve wasted whole days at work over stupid shit like that before. Well, maybe not a whole day but you get the point. Murphy’s Law seems to strike me often.

1 Like

Auto-negotiation to 100 half duplex is an indication that auto-negotiation is not working.

What happens if you patch directly from a device into the switch, without any structured cabling?

Auto negotiation is failing, and thats either because:

  • it isn’t supported by either device
  • it isn’t turned on, on either device
  • you have a cabling problem.

edit:
lol… :smiley:

been there, done similar dumb stuff

I just installed Ubuntu (for the first time in many years, actually) on my test box and noticed that it defaulted the NIC to 100. Checking the auto-negotiation and a reboot fixed it for me as well.

Is this normal behavior for network-manager, or is this some kind of bug?

Could be an uncaught regression.

1 Like

Checking my 18.04 install… seems OK here?

This one was an upgrade from 16.04 though.

Do you know if these cables run over top of any electrical wires of flourescent light ballast? We get this sometimes at a meat packing plant who insist on running their own network cables.

They were all running by my workstations power feed, but the problem was that NM had disabled autonegotiation.

1 Like