≡ Menu

Linux – Determine / Find Ethernet Connection Speed

How do I determine my Ethernet connection speed under Debian Linux 4.0/5.0/6.0/7.0/8.0 server?

You need to use the ethtool command to display or change Ethernet card settings. It is used for querying settings of an ethernet device such as
=> Link speed
=> Auto negotiation
=> 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
Sample outputs:

Fig.01: Ubuntu Linux verify the speed of my NIC (network card)

Fig.01: Ubuntu Linux verify the speed of my NIC (network card)


You can also use the following two commands:
$ dmesg | grep eth0 | grep up
$ dmesg | grep bond0 | grep up

OR use the command line utility called mii-tool to checks or sets the status of a network interface’s Media Independent Interface (MII) unit:
$ mii-tool -v eth0

Sysadmin because even developers need heroes!!!

Share this tutorial on:
{ 12 comments… add one }
  • ashwani July 10, 2008, 9:47 am

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

    • gopi November 9, 2010, 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

  • Juan Pedro Sanchez August 26, 2008, 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

  • bikaron September 3, 2008, 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.

  • Yfrwlf July 29, 2009, 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.

  • lucb1e March 9, 2011, 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 :)

  • cali August 17, 2011, 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.

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

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

  • biplab November 28, 2012, 11:20 am

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

  • rduke15 July 6, 2014, 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

  • Karthik September 17, 2014, 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

    • Vivek Gite July 12, 2016, 5:23 pm

      If your interface name is en6, enter:
      ifconfig en6 | grep media
      media: autoselect (100baseTX )
      If your interface name is en0, enter:
      ifconfig en0 | grep media

Security: Are you a robot or human?

Leave a Comment

You can use these HTML tags and attributes: <strong> <em> <pre> <code> <a href="" title="">


   Tagged with: , , , , , , , , , , , , , ,