Ethtool

Aus Thomas-Krenn-Wiki
Wechseln zu: Navigation, Suche

Das ethtool ist ein Linuxprogramm mit dem Sie Ethernetports optimieren bzw. diagnostizieren können.

Inhaltsverzeichnis

Erläuterung

Mit dem Tool ethtool kann man Netzwerkkschnittstellen auf individuelle Wünsche konfigurieren. Dabei kann man zum Beispiel die Bandbreite festlegen (Achtung: Muss bei beiden Seiten eingestellt werden) oder auf Autonegotiation(Automatische Anpassung der Bandbreite) gestellt werden. Desweiteren können folgende Informationen ausgelesen werden:

  • link Status
  • PCI-Slot
  • Geräte Version
  • Wake on lan

Ansicht

Als erstes müssen Sie ethtool mit folgendem Befehl installieren:

 apt-get install ethtool

Hier sehen Sie die Ausgabe bei

 ethtool eth0
ethtool eth0
Settings for eth0:
	Supported ports: [ MII ]
	Supported link modes:   10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	Advertised pause frame use: Symmetric Receive-only
	Advertised auto-negotiation: Yes
	Speed: 10Mb/s
	Duplex: Half
	Port: Twisted Pair
	PHYAD: 1
	Transceiver: internal
	Auto-negotiation: on
	MDI-X: Unknown
	Supports Wake-on: g
	Wake-on: d
	Current message level: 0x000000ff (255)
			       drv probe link timer ifdown ifup rx_err tx_err
	Link detected: no

Damit ist die Konfiguration des ersten Netzwerkports ersichtlich. Dabei fällt auf das kein Uplink verfügbar ist. Zusätzlich ist ersichtlich das die Schnittstelle 10 bzw. 100MBit fähig ist. Die Auto-Negotatiation ist eingeschalten, das heißt bei einem 10MBit Switch wird die Bandbreite angepasst bzw. gedrosselt.

Die Auto-Negotiation kann mit folgendem Befehl ausgeschaltet werden:

 ethtool -s eth0 autoneg off

Befehle

Hier finden Sie einen Auszug aus dem Manual (Befehl: ethtool -h):

ethtool version 2.6.37
Usage:
ethtool DEVNAME	Display standard information about device
        ethtool -s|--change DEVNAME	Change generic options
		[ speed %d ]
		[ duplex half|full ]
		[ port tp|aui|bnc|mii|fibre ]
		[ autoneg on|off ]
		[ advertise %x ]
		[ phyad %d ]
		[ xcvr internal|external ]
		[ wol p|u|m|b|a|g|s|d... ]
		[ sopass %x:%x:%x:%x:%x:%x ]
		[ msglvl %d | msglvl type on|off ... ]
        ethtool -a|--show-pause DEVNAME	Show pause options
        ethtool -A|--pause DEVNAME	Set pause options
		[ autoneg on|off ]
		[ rx on|off ]
		[ tx on|off ]
        ethtool -c|--show-coalesce DEVNAME	Show coalesce options
        ethtool -C|--coalesce DEVNAME	Set coalesce options
		[adaptive-rx on|off]
		[adaptive-tx on|off]
		[rx-usecs N]
		[rx-frames N]
		[rx-usecs-irq N]
		[rx-frames-irq N]
		[tx-usecs N]
		[tx-frames N]
		[tx-usecs-irq N]
		[tx-frames-irq N]
		[stats-block-usecs N]
		[pkt-rate-low N]
		[rx-usecs-low N]
		[rx-frames-low N]
		[tx-usecs-low N]
		[tx-frames-low N]
		[pkt-rate-high N]
		[rx-usecs-high N]
		[rx-frames-high N]
		[tx-usecs-high N]
		[tx-frames-high N]
		[sample-interval N]
        ethtool -g|--show-ring DEVNAME	Query RX/TX ring parameters
        ethtool -G|--set-ring DEVNAME	Set RX/TX ring parameters
		[ rx N ]
		[ rx-mini N ]
		[ rx-jumbo N ]
		[ tx N ]
        ethtool -k|--show-offload DEVNAME	Get protocol offload information
        ethtool -K|--offload DEVNAME	Set protocol offload
		[ rx on|off ]
		[ tx on|off ]
		[ sg on|off ]
		[ tso on|off ]
		[ ufo on|off ]
		[ gso on|off ]
		[ gro on|off ]
		[ lro on|off ]
		[ rxvlan on|off ]
		[ txvlan on|off ]
		[ ntuple on|off ]
		[ rxhash on|off ]
        ethtool -i|--driver DEVNAME	Show driver information
        ethtool -d|--register-dump DEVNAME	Do a register dump
		[ raw on|off ]
		[ file FILENAME ]
        ethtool -e|--eeprom-dump DEVNAME	Do a EEPROM dump
		[ raw on|off ]
		[ offset N ]
		[ length N ]
        ethtool -E|--change-eeprom DEVNAME	Change bytes in device EEPROM
		[ magic N ]
		[ offset N ]
		[ length N ]
		[ value N ]
        ethtool -r|--negotiate DEVNAME	Restart N-WAY negotation
        ethtool -p|--identify DEVNAME	Show visible port identification (e.g. blinking)
               [ TIME-IN-SECONDS ]
        ethtool -t|--test DEVNAME	Execute adapter self test
               [ online | offline ]
        ethtool -S|--statistics DEVNAME	Show adapter statistics
        ethtool -n|--show-nfc DEVNAME	Show Rx network flow classificationoptions
		[ rx-flow-hash tcp4|udp4|ah4|sctp4|tcp6|udp6|ah6|sctp6 ]
        ethtool -f|--flash DEVNAME	FILENAME Flash firmware image from the specified file to a region on the device
               [ REGION-NUMBER-TO-FLASH ]
        ethtool -N|--config-nfc DEVNAME	Configure Rx network flow classification options
		[ rx-flow-hash tcp4|udp4|ah4|sctp4|tcp6|udp6|ah6|sctp6 m|v|t|s|d|f|n|r... ]
        ethtool -x|--show-rxfh-indir DEVNAME	Show Rx flow hash indirection
        ethtool -X|--set-rxfh-indir DEVNAME	Set Rx flow hash indirection
		equal N | weight W0 W1 ...
        ethtool -U|--config-ntuple DEVNAME	Configure Rx ntuple filters and actions
		{ flow-type tcp4|udp4|sctp4
		  [ src-ip ADDR [src-ip-mask MASK] ]
		  [ dst-ip ADDR [dst-ip-mask MASK] ]
		  [ src-port PORT [src-port-mask MASK] ]
		  [ dst-port PORT [dst-port-mask MASK] ]
		| flow-type ether
		  [ src MAC-ADDR [src-mask MASK] ]
		  [ dst MAC-ADDR [dst-mask MASK] ]
		  [ proto N [proto-mask MASK] ] }
		[ vlan VLAN-TAG [vlan-mask MASK] ]
		[ user-def DATA [user-def-mask MASK] ]
		action N
        ethtool -u|--show-ntuple DEVNAME	Get Rx ntuple filters and actions

        ethtool -P|--show-permaddr DEVNAME	Show permanent hardware address
        ethtool -h|--help 		Show this help

Das könnte Sie auch interessieren

Iptables Firewall Regeln dauerhaft speichern
Linux Netzwerk Analyse mit iptstate
Linux Netzwerk Analyse mit traceroute