You are not logged in.
Hello!
Since some time (sorry I can't pinpoint exactly wht changed) my onboard intel chip network device only uses 100 Mb/s for connection speed. Before it has been 1000 Mb/s with full duplex.
So I used
ethtool -s enp0s25 speed 1000
ethtool -s enp0s25 duplex full
ethtool -s enp0s25 autoneg on
to fix it.
So that's fine now. But I have no clue how to make that change sticky so the network interface starts up again on full speed like it used to do.
I'd really appreciate some help.
What exactly controls the network device settings on startup?
What do I have to change there to make it start up with full speed again?
Thanks!
Last edited by piedro (2021-02-17 06:55:49)
Offline
You'll have to use a script in yoru network managing service or a udev rule or a systemd service.
What's the output of ethtool before you change the parameters?
Which NIC model is thatin particular (check "lspci -k")?
Online
Hmm, thanks...
Well, here is the output of ethtool:
> ethtool enp0s25
Settings for enp0s25:
Supported ports: [ TP ]
Supported link modes:
10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Speed: 100Mb/s
Duplex: Full
Auto-negotiation: off
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
...and the information on the chip:
> lspci -k
...
00:19.0 Ethernet controller: Intel Corporation Ethernet Connection (2) I218-V
Subsystem: ASRock Incorporation Device 15a1
Kernel driver in use: e1000e
Kernel modules: e1000e
...
This must have been messed up by some recent update... I am very sure that the 1000Mb/s full duplex has been turned on during startup before. Maybe it's enough to set the "autonegotiation on" again?
Thanks for having a look at this!
Cheers, p.
Offline
I never experienced (or hear of) NICs that offer GigaLAN mode boot into a slower state. What are you using to manage your network?
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
Auto-negotiation should always be on by default as far as I know.
If you use network manager, check that its configuration does not disable it.
Last edited by progandy (2021-02-07 17:51:16)
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
I seem to recall this issue happening with some Intel adapters recently. If I recall correctly, switching to the LTS kernel worked around the issue. Worth a try if you don't mind using the LTS kernel, if not then I guess you'll need to write a service (or other alternate method).
Offline
Yes - this is an onboard Intel chip. But nothing exotic at all!
But since I use KDE with a nvidia graphics adapter, I'd rather do not want to switch to the LTS kernel.
(though I will test this with the next reboot...)
So: How do I force "autonegotiation on" at boot?
It's an arch default setup - I haven't changed any network managers as far as I know...
Any suggestions?
thx a lot, p.
Offline
Right but which networkmanager are you using? If possible, try a simple systemd-network config assuming you're using some graphical client. Same problem?
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
Just don't forget to install nvidia-lts.
Do you use a parallel windows installation? (See the 3rd link in my signature - if you don't disable autonegotiation, maybe a dormant windows does…)
There's no "default" setup, you're using the NIC-controlling service you selected the way you configured it.
Since you don't seen to know which that is, the typical answer is "many, tripping over each other".
Please post the output of "sudo journalctl -b"
Online
Hello @seth
Thank you for your hints!
After checking the journalctl -b I decided that this is a bit too long to post here.
Also I felt a bit insecure about publishing this whole file... ignorance breeds fear!
But I checked the Arch Wiki for network managers and after trying to start every single one mentioned, it turns out
Systemd-networkd is installed but disabled. But KDE seems to use NetworkManager. So Ichecked into the Settings of KDE and found the configuration GUI for the network interface.
Here the autonegotiation has been turned off!
So I tested this: If I turn "autonegotiation on" for the enp0s25 network device the device speed immediatly switches to full speed duplex with 1000Mb/s !
So thanks for your patience and help!
Solved!
Cheers!
p
Offline
After checking the journalctl -b I decided that this is a bit too long to post here.
See the very first link in my signature ;-)
Also I felt a bit insecure about publishing this whole file
The journal is not supposed to contain private data - might be some embarrassing stuff, though
(Hostname, SSID, username, maybe audits when you tried something like
$ give me porn
zsh: command not found: give
$ sudo give me porn # https://xkcd.com/149/
If I turn "autonegotiation on" for the enp0s25 network device the device speed immediatly switches to full speed duplex with 1000Mb/s !
Please always remember to mark resolved threads by editing your initial posts subject - so others will know that there's no task left, but maybe a solution to find.
Thanks.
Online