Change NIC settings betwee Full / Half duplex

If you are experiencing slow speeds and packet loss on a Linux server, you may need to have the NIC settings restored to full duplex, to accomplish this please do the following:

Login to server as root and run the following commands:

ethtool eth0 (or eth1, etc)

If you get a response back from the previous command, do the following:

ethtool -s eth0 speed 100;
ethtool -s eth0 autoneg off
ethtool -s eth0 duplex full;

If you do not get a response back from the ethtool command, you’ll need one of the following:

mii-tool -rR (for 100mbit)
mii-tool -F 10baseT-FD (for 10mbit)

Once the above steps are followed the server speed can be checked using the command as

mii-tool eth0

Output should be:

eth0: 100 Mbit, full duplex, link ok

Accordingly you can change the above 3 commands to make it work in Half duplex mode, or 10 mbps (setting your NIC to 100mbit if you are only allocated 10mbits will result in your server going offline and will require a Hivelocity technician to console the server).

To make the change permanent for 10mbits on RedHat-based systems, add the following to
/etc/sysconfig/network-scripts/ifcfg-eth0 :
ETHTOOL_OPTS="speed 10 duplex full autoneg off"

For Debian-based systems, add the following to
/etc/network/interfaces :
up mii-tool -F 10baseT-FD

This article is designed to help you resolve packetloss and slow speed issues.

Share on Twitter
Share on Facebook