Ethtool

From EIK wiki

Autor

Nimi: Sten-Erik Maalinn
Rühm: A21
Kuupäev: 06.12.2016

Sissejuhatus

Ethtool (lühend inglise keelesest sõnapaarist Ethernet tool ehk Etherneti säte) käsku kasutatakse Linux kerneli baasil töötavate operatsioonisüsteemide[1] interneti võrgukaardi ja draiverite sätete ning parameetrite muutmiseks. Antud käsu abil saab muuta nii võrgukaadi kiirust, portide tööd kui ka muid Ethernetiga seonduvaid seadeid. Vaadata saab ka erinevat statistikat ja informatsiooni võrgukaardi töö kohta. Paljud käsud töötavad ka ilma juurkasutaja õigusteta, kuid suurema arvu ning täpsemate seadete muutmiseks on vajalik antud õigused.

Ethtool käsu abil saab:[2]

1. Kontrollida võrguseadme statistikat.
2. Kontrollida kiirust, porte, dupleksedastust, automaatkätlust ning voo reguleerimist võrguseadmes.
3. Indentifitseerida, diagnoosida ning parandada vigu võrguseadmes.
4. Püsivara uuendamine välkmälu abil.
5. Laadimis kontrollsummade kontrollimine.

Ethtool-i saadaval olevatele versioone näeb vajutades siia.

Formaat

Käsu ülesehitus:

ethtool [säte...] (võrgukaardi nimi)

Võrgukaardi kehtivate seadete kuvamine:

ethtool (võrgukaardi nimi)

Näide:[3]

~]# ethtool eth0
Settings for em1:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 2
Transceiver: internal
Auto-negotiation: on
MDI-X: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes

Võtmete kirjeldused

-h --help Ülevaade antud käsuga seonduvad võimalused ning millist liidet kasutades neid realiseerida.
-a --show-pause Informatsioon võrguseadme pausi parameetrite kohta.
-A --pause Võrguseadme pausi parameetrite muutmine.
-c --show-coalesce Võrguseadme liitmis informatsioon.
-C, --coalesce Võrguseadme liitmis seadete muutmine.
-g --show-ring Informatsioon võrguseadme rx/tx ringi parameetrite kohta.
-G --set-ring Võrguseadme rx/tx ringi parameetrite muutmine.
-i --driver Lühikesemal või pikemal kujul võrguseadme draiveri informatsiooni kuvamine.
-d --register-dump Võrguseadme registritõmmise kuvamine.
-e --eeprom-dump Võrguseadme EEPROM tõmmise kuvamine.
-E --change-dump Spetsiifiliste EEPROM baitide muutmiseks kasutatav käsk.
-k --show-offload, --show-features Võrguseadme mahalaadimis(offload) protokollide pärimise võimalus.
-K --offload Võrguseadme mahalaadimis(offload) parameetrite ja muude teenuste muutimiseks.
-p --identify Kasutatakse võrguseadme identifitseerimiseks, välgutades seadme LED-lampe.
-r --negotiate Automaatsete automaatkätluse(autonegotiation) taaskäivitamine kui automaatne läbirääkimine on aktiveeritud.
-S --statistics Võrgukaardi ja draiverite statistika pärimine.
-t --test Võrgukaardi võimekuse testide teostamiseks.
-s --change Võrguseadme seadete muutmine.
-T --show-time-stamping Võrguseadmete parameetrite andmete salvestamiseks teatud ajahetkel.
--version Võrguseadme versiooni vaatamine.


Käskude näited ja selgitused

Draiveri informatsiooni näide:[4]

~]$ ethtool -i eth0
driver: e1000e
version: 2.0.0-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 

Automaatkätluse pausile panemine:

ethtool -a eth0 autoneg on|off 

RX pausi sisse- ja välja lülitamine:

ethtool -a eth0 rx on|off 

TX pausi sisse- ja väljalülitamine:

ethtool -a eth0 tx on|off 

Võrguseadme rx ja tx ringide parameetrite muutmine:

ethtool -G eth0 rx N  
ethtool -G eth0 tx N  

Kontrollsumma aktiveerimine:

ethtool -K eth0 rx on|off 
ethtool -K eth0 tx on|off 

TCP segmentatsiooni mahalaadimise aktiveerimine:

ethtool -K eth0 tso on|off 

Testide läbiviimine: online - teenust segamata piiratud test, offline - suurem kontroll teenust piirates, external_lb - täiskontroll:

ethtool -K eth0 online|offline|external_lb 

Võrguseadme identifitseerimiseks kuluva aja määramine:

ethtool -p eth0  N  

Võrguseadme kiiruse valimine Mb/s:

ethtool -s eth0 speed 10|100|1000 

Võrguseadme porti valimine:

ethtool -s eth0 port tp|aui|bnc|mii 

Automaatse läbirääkimise(auto-negotiation) valimine:

ethtool -s eth0 autoneg on|off 

Füüsilise aadressi määramine:

ethtool -s eth0 phyad N  

Dupleksedastuse(duplex mode) määramine:

ethtool -s eth0 duplex half|full 

SecureOn parooli määramine. Parool peab olema 6-baidine xx:yy:zz:aa:bb:cc kujul:

ethtool -s eth0 sopass xx:yy:zz:aa:bb:cc 

Draiveri sõnumi taseme määramine:

ethtool -s eth0 msglvl N 

Wake-on-LAN ehk äratamise seaded:

ethtool -s eth0 wol N  
 p  füüsilisel tegevusel ärkamine
 u  Ainuedastus(unicast) sõnumi tegevusel ärkamine
 m  Multiedastus(multicast) sõnumi tegevusel ärkamine
 b  Leviedastus(broadcast) sõnumi tegevusel ärkamine
 a  ARP tegevuse korral ärkamine
 g  MagicPacket-i tõttu ärkamine
 s  SecureOn parooli määramine MagicPacket-is
 d  Välja lülitamine. Lülitab välja eelnevad käsud

Transiiveri tüübi valimine:

ethtool -s eth0 xcvr internal|external 

Kokkuvõte

Ethtool käsk on viis Linux kernel operatsioonisüsteemis võrgukaardi kohta statistika kogumiseks ning muuta sätteid vastavalt enda soovidele. Siiski ei ole kõik eelnimetatud funktsioonid saadaval iga võrguseadme puhul. Seega tuleb arvestada funktsionaalsuse erinevustega. Samuti on tähtis enne muudatuste sisse viimist põhjalikult uurida käsu toimet, sest antud käsud võivad valel kasutamisel kahjustada võrgukaardi töötamist.

Kasutatud kirjandus

Ethtool man page
Redhat
FTP Kernel