I just wanted to document the fix here since I ran into this problem and couldn't find the fix anywhere. My host and VM were unable to communicate with my modem over 5Gbps, even if I forced negotiation on the modem to no avail. I ran ethtool and discovered the full list of negotiation / speed capabilities were showing: 10/100/1000/2500/5000/10000 (Mbps)
However, the autonegotiation was only advertising 10/100/1000 (Mbps). To fix this I navigated to Proxmox > Shell and executed the following commands:
I then added the following pre-up entries below the "iface" lines that represented my WAN and LAN adapters to /etc/network/interfaces:
The pre-up lines we added underneath our interfaces execute the following actions on start up:
pre-up = Loads the command during startup.
/usr/sbin/ethtool = Ethtool used for controlling and modifying network driver behavior.
-s = Calls settings parameter.
enp1s0fx = Calls the name of the network adapter we are calling the settings for.
advertise = Calls the setting arguement for advertising autonegotiation speed and duplex.
0x1800000001028 = Sets the speed and duplex advertised by autonegotiation. This value is a combination (additive sum) of the following values:
Press CTRL + X to receive a prompt if you wish to save. Type "Y" for yes.
Reboot and now your network adapters should be advertising the full capabilities of the network. 2.5 Gbps, 5 Gbps, and 10 Gbps should now be available when connecting a compatible network device that autonegotiates those speeds.
I would eventually like to see a frontend for ethtool when modifying the network adapter settings in the Proxmox GUI.
However, the autonegotiation was only advertising 10/100/1000 (Mbps). To fix this I navigated to Proxmox > Shell and executed the following commands:
Code:
apt update
apt install ethtool
nano /etc/network/interfaces
I then added the following pre-up entries below the "iface" lines that represented my WAN and LAN adapters to /etc/network/interfaces:
Bash:
iface enp1s0f0 inet manual
pre-up /usr/sbin/ethtool -s enp1s0f0 advertise 0x1800000001028
#WAN
iface enp1s0f1 inet manual
pre-up /usr/sbin/ethtool -s enp1s0f1 advertise 0x1800000001028
#LAN
The pre-up lines we added underneath our interfaces execute the following actions on start up:
pre-up = Loads the command during startup.
/usr/sbin/ethtool = Ethtool used for controlling and modifying network driver behavior.
-s = Calls settings parameter.
enp1s0fx = Calls the name of the network adapter we are calling the settings for.
advertise = Calls the setting arguement for advertising autonegotiation speed and duplex.
0x1800000001028 = Sets the speed and duplex advertised by autonegotiation. This value is a combination (additive sum) of the following values:
Code:
0x008 - 100baseT
0x020 - 1000baseT Full
0x800000000000 - 2500baseT Full
0x1000000000000 - 5000baseT Full
0x1000 - 10000baseT Full
Press CTRL + X to receive a prompt if you wish to save. Type "Y" for yes.
Reboot and now your network adapters should be advertising the full capabilities of the network. 2.5 Gbps, 5 Gbps, and 10 Gbps should now be available when connecting a compatible network device that autonegotiates those speeds.
I would eventually like to see a frontend for ethtool when modifying the network adapter settings in the Proxmox GUI.
Last edited: