Programster's Blog

Tutorials focusing on Linux, programming, and open-source

Resolving An Issue With Intel Network Hardware Hanging

I was recently experiencing a strange issue whereby a client's Proxmox server on Hetzner was suddenly dropping out and becoming unavailable. I had initially thought that this was some sort of sudden power loss because it had cut out so quick, that I was not able to get any alerts out of it from Uptime Kuma or Zabbix. However, after checking Zabbix it turns out the VMs had been running the whole time, and Hetzner also showed that the server was up. In the end, it was a case of the onboard NIC suddenly cutting out due to a "hardware hang", which effectively meant the server was instantly offline, even though it hadn't run out of power or memory.

This problem is specific to an old onboard intel NIC and corresponding driver (e1000e), which I happened to be using from using old servers through Hetzner's auction system. If you rent new servers not through the auction, or use AMD-based servers, you are not likely to experience this issue.

This tutorial will show you how to workaround the issue by disabling TCP/Generic segmentation offloading (TSO/GSO) and related features.

Steps

sudo apt update && apt install ethtool -y

Add this line under the eno1 interface (not the bridge)

post-up /usr/sbin/ethtool -K eno1 tso off gso off gro off tx off rx off rxvlan off txvlan off sg off

...so it becomes:

auto eno1
iface eno1 inet manual
    post-up /usr/sbin/ethtool -K eno1 tso off gso off gro off tx off rx off rxvlan off txvlan off sg off

Run the following command to apply the changes immediately

sudo ifreload -a

Check

Check the changes took affect by running the following:

sudo ethtool -k eno1 | grep -E 'tso|gso|gro|tx |rx |vlan|sg'

THey should all show as off. E.g. like so:

rx-vlan-offload: off
tx-vlan-offload: off
rx-vlan-filter: off [fixed]
vlan-challenged: off [fixed]
tx-gso-robust: off [fixed]
tx-gso-partial: off [fixed]
tx-gso-list: off [fixed]
tx-vlan-stag-hw-insert: off [fixed]
rx-vlan-stag-hw-parse: off [fixed]
rx-vlan-stag-filter: off [fixed]
rx-gro-hw: off [fixed]
rx-gro-list: off
rx-udp-gro-forwarding: off

References

Last updated: 23rd March 2026
First published: 23rd March 2026

This blog is created by Stuart Page

I'm a freelance web developer and technology consultant based in Surrey, UK, with over 10 years experience in web development, DevOps, Linux Administration, and IT solutions.

Need support with your infrastructure or web services?

Get in touch