From Christoph's Personal Wiki
Jump to: navigation, search

ethtool is a Linux command for displaying or modifying the Network Interface Controller (NIC) parameters.


The command is useful for:

  • Identification and diagnosis of Ethernet devices
  • Extended Ethernet devices statistics
  • Control speed, duplex, auto-negotiation and flow control for Ethernet devices
  • Control checksum offload and other hardware offload features
  • Control digital media adapter (DMA) ring sizes and interrupt moderation
  • Control receive queue selection for multi-queue devices
  • Upgrade firmware in flash memory


  • Display the current parameters for your eth0 device:
$ ethtool eth0
Settings for eth0:
	Supported ports: [ TP ]
	Supported link modes:   10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	Supported pause frame use: No
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	Advertised pause frame use: No
	Advertised auto-negotiation: Yes
	Speed: 1000Mb/s
	Duplex: Full
	Port: Twisted Pair
	Transceiver: internal
	Auto-negotiation: on
	MDI-X: on
Cannot get wake-on-lan settings: Operation not permitted
	Current message level: 0x00000007 (7)
			       drv probe link
	Link detected: yes
  • Display Ethernet driver settings:
$ ethtool -i eth0
driver: e1000e
version: 2.1.4-k
firmware-version: 0.13-3
bus-info: 0000:00:19.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: no
  • Make your NIC blink for the physical port using eth0:
$ ethtool -p eth0

This is useful if your ethernet adapter has multiple ports and you are not sure which one has been assigned to eth0.

See also

List of utilities in the "net-tools" project
  • arp
  • hostname
  • ifconfig
  • netstat
  • rarp
  • route
  • plipconfig
  • slattach
  • mii-tool — a CLI command allowing to modify the Network Interface Controller (NIC) parameters.
  • iptunnel
  • ipmaddr