Determine / Find ethernet connection speed

by on July 19, 2007 · 11 comments· LAST UPDATED July 19, 2007

in , ,

Q. How do I determine my Ethernet connection speed under Debian Linux 4.0 server?

A. You need to use ethtool command todisplay or change ethernet card settings. It is used for querying settings of an ethernet device such as
=> Link speed

=> Autonegotiation

=> Coalescing settings

=> Change the rx/tx ring parameters

=> Setup new speed and much more

Most intelligent network devices use an autonegotiation protocol to communicate what media technologies they support, and then select the
fastest mutually supported media technology.

How do I determine ethernet connection speed?

Type the following command to get speed for eth0:
$ ethtool eth0 | less
OR
$ ethtool eth0 | grep -i speed

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 11 comments… read them below or add one }

1 ashwani July 10, 2008 at 9:47 am

Is there any similar functionality on Windows?
I want to see the Duplex and Speed on Windows as well.

Reply

2 gopi November 9, 2010 at 8:22 am

yes you have to go to your Ethernet card properties which can me done through device manger and there select advance option and change the LAN link speed either to 10 or 100 Mbps full or half duplex

Reply

3 Juan Pedro Sanchez August 26, 2008 at 3:06 pm

I’m using Ubuntu 8.10 alpha 3 32bits.
I tried “ethtool eth0 | grep -i speed ” but needed to add sudo to execute it.
Without sudo:
Cannot get device settings: Operation not permitted
Cannot get wake-on-lan settings: Operation not permitted
Cannot get link status: Operation not permitted
jp@jp-desktop810:~$ sudo ethtool eth0 | grep -i speed
Speed: 100Mb/s

Reply

4 bikaron September 3, 2008 at 1:24 am

Talk about difficult to find out what my nic link speed is with linux (fedora 8) …
I would have expected “settings/network or network status” to show me.

On windows just look at the properties/status of the network card object and it shows link speed, duplex and real time packet count.

Reply

5 Yfrwlf July 29, 2009 at 8:21 am

On Windows, you type in a fairly long command to get it, instead of just “ethtool “, which is shorter. You’re comparing the graphical tools available on Windows to the command line of Linux. Apples and oranges.

Reply

6 lucb1e March 9, 2011 at 12:26 pm

Tried this on ubuntu, uhm, 8 or something (was some old usb livestick i often use to revive data from dead computers and laptops).
I had to install the ethtool first, but a permission denied. This command worked though:
sudo apt-get install ethtool
Then I tried the first command in this article, which gave me no info and I didnĀ“t know howto get out of the program. Closed the terminal and opened it up again, then ran the second command. Permission denied. But a sudo !! did the trick. In short, this would work after doing the apt-get-install:
sudo ethtool eth0 | grep -i speed

Hope this helps others out who are just as newb as me :)

Reply

7 cali August 17, 2011 at 5:40 pm

@lucb1e

apt-get and ethtool are administrator tools hence the need to use sudo before the actual commands. Users are normally not able to use them as they can affect the system and possibly cause major failures in connectivty or software.

Reply

8 Ian B March 8, 2012 at 5:10 pm

On amazon Linux on EC2, ethtool only says whether a link is detected or not.

Reply

9 biplab November 28, 2012 at 11:20 am

ifconfig -a
cat /proc/net/bonding/bond0
cat /proc/net/bonding/bond1

Reply

10 rduke15 July 6, 2014 at 1:24 pm

If you don’t have ethtool installed, you may have mii-tool:

# mii-tool
eth0: negotiated 1000baseT-FD flow-control, link ok
eth1: negotiated 100baseTx-FD flow-control, link ok

Reply

11 Karthik September 17, 2014 at 9:06 am

Can any one tell me ,How to get Ethernet Link Speed(through command prompt i e Terminal ) in MAC OS X ?
Thank you

Reply

Leave a Comment

Tagged as: , , , , , , , , , , ,

Previous Faq:

Next Faq: