1ETHTOOL(8) System Manager's Manual ETHTOOL(8)
2
3
4
6 ethtool - query or control network driver and hardware settings
7
9 ethtool devname
10
11 ethtool -h|--help
12
13 ethtool --version
14
15 ethtool [--debug N] args
16
17 ethtool [--json] args
18
19 ethtool [-I | --include-statistics] args
20
21 ethtool --monitor [ command ] [ devname ]
22
23 ethtool -a|--show-pause devname
24
25 ethtool -A|--pause devname [autoneg on|off] [rx on|off] [tx on|off]
26
27 ethtool -c|--show-coalesce devname
28
29 ethtool -C|--coalesce devname [adaptive-rx on|off] [adaptive-tx on|off]
30 [rx-usecs N] [rx-frames N] [rx-usecs-irq N] [rx-frames-irq N]
31 [tx-usecs N] [tx-frames N] [tx-usecs-irq N] [tx-frames-irq N]
32 [stats-block-usecs N] [pkt-rate-low N] [rx-usecs-low N]
33 [rx-frames-low N] [tx-usecs-low N] [tx-frames-low N]
34 [pkt-rate-high N] [rx-usecs-high N] [rx-frames-high N]
35 [tx-usecs-high N] [tx-frames-high N] [sample-interval N]
36
37 ethtool -g|--show-ring devname
38
39 ethtool -G|--set-ring devname [rx N] [rx-mini N] [rx-jumbo N] [tx N]
40
41 ethtool -i|--driver devname
42
43 ethtool -d|--register-dump devname [raw on|off] [hex on|off] [file
44 name]
45
46 ethtool -e|--eeprom-dump devname [raw on|off] [offset N] [length N]
47
48 ethtool -E|--change-eeprom devname [magic N] [offset N] [length N]
49 [value N]
50
51 ethtool -k|--show-features|--show-offload devname
52
53 ethtool -K|--features|--offload devname feature on|off ...
54
55 ethtool -p|--identify devname [N]
56
57 ethtool -P|--show-permaddr devname
58
59 ethtool -r|--negotiate devname
60
61 ethtool -S|--statistics devname
62
63 ethtool --phy-statistics devname
64
65 ethtool -t|--test devname [offline|online|external_lb]
66
67 ethtool -s devname [speed N] [duplex half|full] [port tp|aui|bnc|mii]
68 [mdix auto|on|off] [autoneg on|off] [advertise N[/M] |
69 advertise mode on|off ...] [phyad N] [xcvr internal|external]
70 [wol N[/M] | wol p|u|m|b|a|g|s|f|d...]
71 [sopass xx:yy:zz:aa:bb:cc] [master-slave preferred-
72 master|preferred-slave|forced-master|forced-slave] [msglvl
73 N[/M] | msglvl type on|off ...]
74
75 ethtool -n|-u|--show-nfc|--show-ntuple devname
76 [ rx-flow-hash tcp4|udp4|ah4|esp4|sctp4|tcp6|udp6|ah6|esp6|sctp6 |
77 rule N ]
78
79 ethtool -N|-U|--config-nfc|--config-ntuple devname
80 rx-flow-hash tcp4|udp4|ah4|esp4|sctp4|tcp6|udp6|ah6|esp6|sctp6
81 m|v|t|s|d|f|n|r... |
82 flow-type
83 ether|ip4|tcp4|udp4|sctp4|ah4|esp4|ip6|tcp6|udp6|ah6|esp6|sctp6
84 [src xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]]
85 [dst xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]] [proto N [m N]]
86 [src-ip ip-address [m ip-address]] [dst-ip ip-address [m ip-
87 address]] [tos N [m N]] [tclass N [m N]] [l4proto N [m N]]
88 [src-port N [m N]] [dst-port N [m N]] [spi N [m N]]
89 [l4data N [m N]] [vlan-etype N [m N]] [vlan N [m N]]
90 [user-def N [m N]] [dst-
91 mac xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]] [action N]
92 [context N] [loc N] |
93 delete N
94
95 ethtool -w|--get-dump devname [data filename]
96
97 ethtool -W|--set-dump devname N
98
99 ethtool -T|--show-time-stamping devname
100
101 ethtool -x|--show-rxfh-indir|--show-rxfh devname
102
103 ethtool -X|--set-rxfh-indir|--rxfh devname [hkey xx:yy:zz:aa:bb:cc:...]
104 [start N] [ equal N | weight W0 W1 ... | default ] [hfunc FUNC]
105 [context CTX | new] [delete]
106
107 ethtool -f|--flash devname file [N]
108
109 ethtool -l|--show-channels devname
110
111 ethtool -L|--set-channels devname [rx N] [tx N] [other N] [combined N]
112
113 ethtool -m|--dump-module-eeprom|--module-info devname [raw on|off]
114 [hex on|off] [offset N] [length N]
115
116 ethtool --show-priv-flags devname
117
118 ethtool --set-priv-flags devname flag on|off ...
119
120 ethtool --show-eee devname
121
122 ethtool --set-eee devname [eee on|off] [tx-lpi on|off] [tx-timer N]
123 [advertise N]
124
125 ethtool --set-phy-tunable devname [ downshift on|off [count N] ] [
126 fast-link-down on|off [msecs N] ] [ energy-detect-power-down
127 on|off [msecs N] ]
128
129 ethtool --get-phy-tunable devname [downshift] [fast-link-down] [energy-
130 detect-power-down]
131
132 ethtool --get-tunable devname [rx-copybreak] [tx-copybreak] [pfc-
133 prevention-tout]
134
135 ethtool --set-tunable devname [rx-copybreak N] [tx-copybreak N]
136 [pfc-prevention-tout N]
137
138 ethtool --reset devname [flags N] [mgmt] [mgmt-shared] [irq] [irq-
139 shared] [dma] [dma-shared] [filter] [filter-shared] [offload]
140 [offload-shared] [mac] [mac-shared] [phy] [phy-shared] [ram]
141 [ram-shared] [ap] [ap-shared] [dedicated] [all]
142
143 ethtool --show-fec devname
144
145 ethtool --set-fec devname encoding auto|off|rs|baser|llrs [...]
146
147 ethtool -Q|--per-queue devname [queue_mask %x] sub_command ...
148 .
149
150 ethtool --cable-test devname
151
152 ethtool --cable-test-tdr devname [first N] [last N] [step N] [pair N]
153
154 ethtool --show-tunnels devname
155
156
158 ethtool is used to query and control network device driver and hardware
159 settings, particularly for wired Ethernet devices.
160
161 devname is the name of the network device on which ethtool should oper‐
162 ate.
163
164
166 ethtool with a single argument specifying the device name prints cur‐
167 rent settings of the specified device.
168
169 -h --help
170 Shows a short help message.
171
172 --version
173 Shows the ethtool version number.
174
175 --debug N
176 Turns on debugging messages. Argument is interpreted as a mask:
177
178 0x01 Parser information
179
180 --json Output results in JavaScript Object Notation (JSON). Only a sub‐
181 set of options support this. Those which do not will continue to
182 output plain text in the presence of this option.
183
184 -I --include-statistics
185 Include command-related statistics in the output. This option
186 allows displaying relevant device statistics for selected get
187 commands.
188
189 -a --show-pause
190 Queries the specified Ethernet device for pause parameter infor‐
191 mation.
192
193 -A --pause
194 Changes the pause parameters of the specified Ethernet device.
195
196 autoneg on|off
197 Specifies whether pause autonegotiation should be enabled.
198
199 rx on|off
200 Specifies whether RX pause should be enabled.
201
202 tx on|off
203 Specifies whether TX pause should be enabled.
204
205 -c --show-coalesce
206 Queries the specified network device for coalescing information.
207
208 -C --coalesce
209 Changes the coalescing settings of the specified network device.
210
211 -g --show-ring
212 Queries the specified network device for rx/tx ring parameter
213 information.
214
215 -G --set-ring
216 Changes the rx/tx ring parameters of the specified network de‐
217 vice.
218
219 rx N Changes the number of ring entries for the Rx ring.
220
221 rx-mini N
222 Changes the number of ring entries for the Rx Mini ring.
223
224 rx-jumbo N
225 Changes the number of ring entries for the Rx Jumbo ring.
226
227 tx N Changes the number of ring entries for the Tx ring.
228
229 -i --driver
230 Queries the specified network device for associated driver in‐
231 formation.
232
233 -d --register-dump
234 Retrieves and prints a register dump for the specified network
235 device. The register format for some devices is known and de‐
236 coded others are printed in hex. When raw is enabled, then eth‐
237 tool dumps the raw register data to stdout. If file is speci‐
238 fied, then use contents of previous raw register dump, rather
239 than reading from the device.
240
241 -e --eeprom-dump
242 Retrieves and prints an EEPROM dump for the specified network
243 device. When raw is enabled, then it dumps the raw EEPROM data
244 to stdout. The length and offset parameters allow dumping cer‐
245 tain portions of the EEPROM. Default is to dump the entire EEP‐
246 ROM.
247
248 raw on|off
249
250 offset N
251
252 length N
253
254 -E --change-eeprom
255 If value is specified, changes EEPROM byte for the specified
256 network device. offset and value specify which byte and it's
257 new value. If value is not specified, stdin is read and written
258 to the EEPROM. The length and offset parameters allow writing to
259 certain portions of the EEPROM. Because of the persistent na‐
260 ture of writing to the EEPROM, a device-specific magic key must
261 be specified to prevent the accidental writing to the EEPROM.
262
263 -k --show-features --show-offload
264 Queries the specified network device for the state of protocol
265 offload and other features.
266
267 -K --features --offload
268 Changes the offload parameters and other features of the speci‐
269 fied network device. The following feature names are built-in
270 and others may be defined by the kernel.
271
272 rx on|off
273 Specifies whether RX checksumming should be enabled.
274
275 tx on|off
276 Specifies whether TX checksumming should be enabled.
277
278 sg on|off
279 Specifies whether scatter-gather should be enabled.
280
281 tso on|off
282 Specifies whether TCP segmentation offload should be en‐
283 abled.
284
285 ufo on|off
286 Specifies whether UDP fragmentation offload should be en‐
287 abled
288
289 gso on|off
290 Specifies whether generic segmentation offload should be en‐
291 abled
292
293 gro on|off
294 Specifies whether generic receive offload should be enabled
295
296 lro on|off
297 Specifies whether large receive offload should be enabled
298
299 rxvlan on|off
300 Specifies whether RX VLAN acceleration should be enabled
301
302 txvlan on|off
303 Specifies whether TX VLAN acceleration should be enabled
304
305 ntuple on|off
306 Specifies whether Rx ntuple filters and actions should be
307 enabled
308
309 rxhash on|off
310 Specifies whether receive hashing offload should be enabled
311
312 -p --identify
313 Initiates adapter-specific action intended to enable an operator
314 to easily identify the adapter by sight. Typically this in‐
315 volves blinking one or more LEDs on the specific network port.
316
317 [ N] Length of time to perform phys-id, in seconds.
318
319 -P --show-permaddr
320 Queries the specified network device for permanent hardware ad‐
321 dress.
322
323 -r --negotiate
324 Restarts auto-negotiation on the specified Ethernet device, if
325 auto-negotiation is enabled.
326
327 -S --statistics
328 Queries the specified network device for NIC- and driver-specif‐
329 ic statistics.
330
331 --phy-statistics
332 Queries the specified network device for PHY specific statis‐
333 tics.
334
335 -t --test
336 Executes adapter selftest on the specified network device. Pos‐
337 sible test modes are:
338
339 offline
340 Perform full set of tests, possibly interrupting normal op‐
341 eration during the tests,
342
343 online Perform limited set of tests, not interrupting normal opera‐
344 tion,
345
346 external_lb
347 Perform full set of tests, as for offline, and additionally
348 an external-loopback test.
349
350 -s --change
351 Allows changing some or all settings of the specified network
352 device. All following options only apply if -s was specified.
353
354 speed N
355 Set speed in Mb/s. ethtool with just the device name as an
356 argument will show you the supported device speeds.
357
358 duplex half|full
359 Sets full or half duplex mode.
360
361 port tp|aui|bnc|mii
362 Selects device port.
363
364 master-slave preferred-master|preferred-slave|forced-master|forced-
365 slave
366 Configure MASTER/SLAVE role of the PHY. When the PHY is con‐
367 figured as MASTER, the PMA Transmit function shall source
368 TX_TCLK from a local clock source. When configured as SLAVE,
369 the PMA Transmit function shall source TX_TCLK from the
370 clock recovered from data stream provided by MASTER. Not all
371 devices support this.
372
373 preferred-master Prefer MASTER role on autonegotiation
374 preferred-slave Prefer SLAVE role on autonegotiation
375 forced-master Force the PHY in MASTER role. Can be used without autonegotiation
376 forced-slave Force the PHY in SLAVE role. Can be used without autonegotiation
377
378 mdix auto|on|off
379 Selects MDI-X mode for port. May be used to override the au‐
380 tomatic detection feature of most adapters. An argument of
381 auto means automatic detection of MDI status, on forces MDI-
382 X (crossover) mode, while off means MDI (straight through)
383 mode. The driver should guarantee that this command takes
384 effect immediately, and if necessary may reset the link to
385 cause the change to take effect.
386
387 autoneg on|off
388 Specifies whether autonegotiation should be enabled. Autone‐
389 gotiation is enabled by default, but in some network devices
390 may have trouble with it, so you can disable it if really
391 necessary.
392
393 advertise N
394 Sets the speed and duplex advertised by autonegotiation.
395 The argument is a hexadecimal value using one or a combina‐
396 tion of the following values:
397
398 0x001 10baseT Half
399 0x002 10baseT Full
400 0x004 100baseT Half
401 0x008 100baseT Full
402 0x80000000000000000 100baseT1 Full
403 0x40000000000000000000000 100baseFX Half
404 0x80000000000000000000000 100baseFX Full
405 0x010 1000baseT Half (not supported by IEEE standards)
406 0x020 1000baseT Full
407 0x20000 1000baseKX Full
408 0x20000000000 1000baseX Full
409 0x100000000000000000 1000baseT1 Full
410 0x8000 2500baseX Full (not supported by IEEE standards)
411 0x800000000000 2500baseT Full
412 0x1000000000000 5000baseT Full
413 0x1000 10000baseT Full
414 0x40000 10000baseKX4 Full
415 0x80000 10000baseKR Full
416 0x100000 10000baseR_FEC
417 0x40000000000 10000baseCR Full
418 0x80000000000 10000baseSR Full
419 0x100000000000 10000baseLR Full
420 0x200000000000 10000baseLRM Full
421 0x400000000000 10000baseER Full
422 0x200000 20000baseMLD2 Full (not supported by IEEE standards)
423 0x400000 20000baseKR2 Full (not supported by IEEE standards)
424 0x80000000 25000baseCR Full
425 0x100000000 25000baseKR Full
426 0x200000000 25000baseSR Full
427 0x800000 40000baseKR4 Full
428 0x1000000 40000baseCR4 Full
429 0x2000000 40000baseSR4 Full
430 0x4000000 40000baseLR4 Full
431 0x400000000 50000baseCR2 Full
432 0x800000000 50000baseKR2 Full
433 0x10000000000 50000baseSR2 Full
434 0x10000000000000 50000baseKR Full
435 0x20000000000000 50000baseSR Full
436 0x40000000000000 50000baseCR Full
437 0x80000000000000 50000baseLR_ER_FR Full
438 0x100000000000000 50000baseDR Full
439 0x8000000 56000baseKR4 Full
440 0x10000000 56000baseCR4 Full
441 0x20000000 56000baseSR4 Full
442 0x40000000 56000baseLR4 Full
443 0x1000000000 100000baseKR4 Full
444 0x2000000000 100000baseSR4 Full
445 0x4000000000 100000baseCR4 Full
446 0x8000000000 100000baseLR4_ER4 Full
447 0x200000000000000 100000baseKR2 Full
448 0x400000000000000 100000baseSR2 Full
449 0x800000000000000 100000baseCR2 Full
450 0x1000000000000000 100000baseLR2_ER2_FR2 Full
451 0x2000000000000000 100000baseDR2 Full
452 0x8000000000000000000 100000baseKR Full
453 0x10000000000000000000 100000baseSR Full
454 0x20000000000000000000 100000baseLR_ER_FR Full
455 0x40000000000000000000 100000baseCR Full
456 0x80000000000000000000 100000baseDR Full
457 0x4000000000000000 200000baseKR4 Full
458 0x8000000000000000 200000baseSR4 Full
459 0x10000000000000000 200000baseLR4_ER4_FR4 Full
460 0x20000000000000000 200000baseDR4 Full
461 0x40000000000000000 200000baseCR4 Full
462 0x100000000000000000000 200000baseKR2 Full
463 0x200000000000000000000 200000baseSR2 Full
464 0x400000000000000000000 200000baseLR2_ER2_FR2 Full
465 0x800000000000000000000 200000baseDR2 Full
466 0x1000000000000000000000 200000baseCR2 Full
467 0x200000000000000000 400000baseKR8 Full
468 0x400000000000000000 400000baseSR8 Full
469 0x800000000000000000 400000baseLR8_ER8_FR8 Full
470 0x1000000000000000000 400000baseDR8 Full
471 0x2000000000000000000 400000baseCR8 Full
472 0x2000000000000000000000 400000baseKR4 Full
473 0x4000000000000000000000 400000baseSR4 Full
474 0x8000000000000000000000 400000baseLR4_ER4_FR4 Full
475 0x10000000000000000000000 400000baseDR4 Full
476 0x20000000000000000000000 400000baseCR4 Full
477
478 phyad N
479 PHY address.
480
481 xcvr internal|external
482 Selects transceiver type. Currently only internal and exter‐
483 nal can be specified, in the future further types might be
484 added.
485
486 wol p|u|m|b|a|g|s|f|d...
487 Sets Wake-on-LAN options. Not all devices support this.
488 The argument to this option is a string of characters speci‐
489 fying which options to enable.
490
491 p Wake on PHY activity
492 u Wake on unicast messages
493 m Wake on multicast messages
494 b Wake on broadcast messages
495 a Wake on ARP
496 g Wake on MagicPacket™
497 s Enable SecureOn™ password for MagicPacket™
498 f Wake on filter(s)
499 d Disable (wake on nothing). This option
500 clears all previous options.
501
502 sopass xx:yy:zz:aa:bb:cc
503 Sets the SecureOn™ password. The argument to this option
504 must be 6 bytes in Ethernet MAC hex format
505 (xx:yy:zz:aa:bb:cc).
506
507 msglvl N
508 msglvl type on|off ...
509 Sets the driver message type flags by name or number. type
510 names the type of message to enable or disable; N specifies
511 the new flags numerically. The defined type names and num‐
512 bers are:
513
514 drv 0x0001 General driver status
515 probe 0x0002 Hardware probing
516 link 0x0004 Link state
517 timer 0x0008 Periodic status check
518 ifdown 0x0010 Interface being brought down
519 ifup 0x0020 Interface being brought up
520 rx_err 0x0040 Receive error
521 tx_err 0x0080 Transmit error
522 tx_queued 0x0100 Transmit queueing
523 intr 0x0200 Interrupt handling
524 tx_done 0x0400 Transmit completion
525 rx_status 0x0800 Receive completion
526 pktdata 0x1000 Packet contents
527 hw 0x2000 Hardware status
528 wol 0x4000 Wake-on-LAN status
529
530 The precise meanings of these type flags differ between
531 drivers.
532
533 -n -u --show-nfc --show-ntuple
534 Retrieves receive network flow classification options or rules.
535
536 rx-flow-hash tcp4|udp4|ah4|esp4|sctp4|tcp6|udp6|ah6|esp6|sctp6
537 Retrieves the hash options for the specified flow type.
538
539 tcp4 TCP over IPv4
540 udp4 UDP over IPv4
541 ah4 IPSEC AH over IPv4
542 esp4 IPSEC ESP over IPv4
543 sctp4 SCTP over IPv4
544 tcp6 TCP over IPv6
545 udp6 UDP over IPv6
546 ah6 IPSEC AH over IPv6
547 esp6 IPSEC ESP over IPv6
548 sctp6 SCTP over IPv6
549
550 rule N Retrieves the RX classification rule with the given ID.
551
552 -N -U --config-nfc --config-ntuple
553 Configures receive network flow classification options or rules.
554
555 rx-flow-hash tcp4|udp4|ah4|esp4|sctp4|tcp6|udp6|ah6|esp6|sctp6
556 m|v|t|s|d|f|n|r...
557 Configures the hash options for the specified flow type.
558
559 m Hash on the Layer 2 destination address of the rx packet.
560 v Hash on the VLAN tag of the rx packet.
561 t Hash on the Layer 3 protocol field of the rx packet.
562 s Hash on the IP source address of the rx packet.
563 d Hash on the IP destination address of the rx packet.
564 f Hash on bytes 0 and 1 of the Layer 4 header of the rx packet.
565 n Hash on bytes 2 and 3 of the Layer 4 header of the rx packet.
566 r Discard all packets of this flow type. When this option is
567 set, all other options are ignored.
568
569 flow-type
570 ether|ip4|tcp4|udp4|sctp4|ah4|esp4|ip6|tcp6|udp6|ah6|esp6|sctp6
571 Inserts or updates a classification rule for the specified
572 flow type.
573
574 ether Ethernet
575 ip4 Raw IPv4
576 tcp4 TCP over IPv4
577 udp4 UDP over IPv4
578 sctp4 SCTP over IPv4
579 ah4 IPSEC AH over IPv4
580 esp4 IPSEC ESP over IPv4
581 ip6 Raw IPv6
582 tcp6 TCP over IPv6
583 udp6 UDP over IPv6
584 sctp6 SCTP over IPv6
585 ah6 IPSEC AH over IPv6
586 esp6 IPSEC ESP over IPv6
587
588 For all fields that allow both a value and a mask to be specified,
589 the mask may be specified immediately after the value using the m
590 keyword, or separately using the field name keyword with -mask ap‐
591 pended, e.g. src-mask.
592
593 src xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]
594 Includes the source MAC address, specified as 6 bytes in
595 hexadecimal separated by colons, along with an optional
596 mask. Valid only for flow-type ether.
597
598 dst xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]
599 Includes the destination MAC address, specified as 6 bytes
600 in hexadecimal separated by colons, along with an optional
601 mask. Valid only for flow-type ether.
602
603 proto N [m N]
604 Includes the Ethernet protocol number (ethertype) and an op‐
605 tional mask. Valid only for flow-type ether.
606
607 src-ip ip-address [m ip-address]
608 Specify the source IP address of the incoming packet to
609 match along with an optional mask. Valid for all IP based
610 flow-types.
611
612 dst-ip ip-address [m ip-address]
613 Specify the destination IP address of the incoming packet to
614 match along with an optional mask. Valid for all IP based
615 flow-types.
616
617 tos N [m N]
618 Specify the value of the Type of Service field in the incom‐
619 ing packet to match along with an optional mask. Applies to
620 all IPv4 based flow-types.
621
622 tclass N [m N]
623 Specify the value of the Traffic Class field in the incoming
624 packet to match along with an optional mask. Applies to all
625 IPv6 based flow-types.
626
627 l4proto N [m N]
628 Includes the layer 4 protocol number and optional mask.
629 Valid only for flow-types ip4 and ip6.
630
631 src-port N [m N]
632 Specify the value of the source port field (applicable to
633 TCP/UDP packets) in the incoming packet to match along with
634 an optional mask. Valid for flow-types ip4, tcp4, udp4, and
635 sctp4 and their IPv6 equivalents.
636
637 dst-port N [m N]
638 Specify the value of the destination port field (applicable
639 to TCP/UDP packets)in the incoming packet to match along
640 with an optional mask. Valid for flow-types ip4, tcp4,
641 udp4, and sctp4 and their IPv6 equivalents.
642
643 spi N [m N]
644 Specify the value of the security parameter index field (ap‐
645 plicable to AH/ESP packets)in the incoming packet to match
646 along with an optional mask. Valid for flow-types ip4, ah4,
647 and esp4 and their IPv6 equivalents.
648
649 l4data N [m N]
650 Specify the value of the first 4 Bytes of Layer 4 in the in‐
651 coming packet to match along with an optional mask. Valid
652 for ip4 and ip6 flow-types.
653
654 vlan-etype N [m N]
655 Includes the VLAN tag Ethertype and an optional mask.
656
657 vlan N [m N]
658 Includes the VLAN tag and an optional mask.
659
660 user-def N [m N]
661 Includes 64-bits of user-specific data and an optional mask.
662
663 dst-mac xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]
664 Includes the destination MAC address, specified as 6 bytes
665 in hexadecimal separated by colons, along with an optional
666 mask. Valid for all IP based flow-types.
667
668 action N
669 Specifies the Rx queue to send packets to, or some other ac‐
670 tion.
671
672 -1 Drop the matched flow
673 -2 Use the matched flow as a Wake-on-LAN filter
674 0 or higher Rx queue to route the flow
675
676 context N
677 Specifies the RSS context to spread packets over multiple
678 queues; either 0 for the default RSS context, or a value re‐
679 turned by ethtool -X ... context new.
680
681 vf N Specifies the Virtual Function the filter applies to. Not
682 compatible with action.
683
684 queue N
685 Specifies the Rx queue to send packets to. Not compatible
686 with action.
687
688 loc N Specify the location/ID to insert the rule. This will over‐
689 write any rule present in that location and will not go
690 through any of the rule ordering process.
691
692 delete N
693 Deletes the RX classification rule with the given ID.
694
695 -w --get-dump
696 Retrieves and prints firmware dump for the specified network de‐
697 vice. By default, it prints out the dump flag, version and
698 length of the dump data. When data is indicated, then ethtool
699 fetches the dump data and directs it to a file.
700
701 -W --set-dump
702 Sets the dump flag for the device.
703
704 -T --show-time-stamping
705 Show the device's time stamping capabilities and associated PTP
706 hardware clock.
707
708 -x --show-rxfh-indir --show-rxfh
709 Retrieves the receive flow hash indirection table and/or RSS
710 hash key.
711
712 -X --set-rxfh-indir --rxfh
713 Configures the receive flow hash indirection table and/or RSS
714 hash key.
715
716 hkey Sets RSS hash key of the specified network device. RSS hash
717 key should be of device supported length. Hash key format
718 must be in xx:yy:zz:aa:bb:cc format meaning both the nibbles
719 of a byte should be mentioned even if a nibble is zero.
720
721 hfunc Sets RSS hash function of the specified network device.
722 List of RSS hash functions which kernel supports is shown as
723 a part of the --show-rxfh command output.
724
725 start N
726 For the equal and weight options, sets the starting receive
727 queue for spreading flows to N.
728
729 equal N
730 Sets the receive flow hash indirection table to spread flows
731 evenly between the first N receive queues.
732
733 weight W0 W1 ...
734 Sets the receive flow hash indirection table to spread flows
735 between receive queues according to the given weights. The
736 sum of the weights must be non-zero and must not exceed the
737 size of the indirection table.
738
739 default
740 Sets the receive flow hash indirection table to its default
741 value.
742
743 context CTX | new
744 Specifies an RSS context to act on; either new to allocate a
745 new RSS context, or CTX, a value returned by a previous
746 ... context new.
747
748 delete Delete the specified RSS context. May only be used in con‐
749 junction with context and a non-zero CTX value.
750
751 -f --flash
752 Write a firmware image to flash or other non-volatile memory on
753 the device.
754
755 file Specifies the filename of the firmware image. The firmware
756 must first be installed in one of the directories where the
757 kernel firmware loader or firmware agent will look, such as
758 /lib/firmware.
759
760 N If the device stores multiple firmware images in separate
761 regions of non-volatile memory, this parameter may be used
762 to specify which region is to be written. The default is 0,
763 requesting that all regions are written. All other values
764 are driver-dependent.
765
766 -l --show-channels
767 Queries the specified network device for the numbers of channels
768 it has. A channel is an IRQ and the set of queues that can
769 trigger that IRQ.
770
771 -L --set-channels
772 Changes the numbers of channels of the specified network device.
773
774 rx N Changes the number of channels with only receive queues.
775
776 tx N Changes the number of channels with only transmit queues.
777
778 other N
779 Changes the number of channels used only for other purposes
780 e.g. link interrupts or SR-IOV co-ordination.
781
782 combined N
783 Changes the number of multi-purpose channels.
784
785 -m --dump-module-eeprom --module-info
786 Retrieves and if possible decodes the EEPROM from plugin mod‐
787 ules, e.g SFP+, QSFP. If the driver and module support it, the
788 optical diagnostic information is also read and decoded.
789
790 --show-priv-flags
791 Queries the specified network device for its private flags. The
792 names and meanings of private flags (if any) are defined by each
793 network device driver.
794
795 --set-priv-flags
796 Sets the device's private flags as specified.
797
798 flag on|off Sets the state of the named private flag.
799
800 --show-eee
801 Queries the specified network device for its support of Energy-
802 Efficient Ethernet (according to the IEEE 802.3az specifica‐
803 tions)
804
805 --set-eee
806 Sets the device EEE behaviour.
807
808 eee on|off
809 Enables/disables the device support of EEE.
810
811 tx-lpi on|off
812 Determines whether the device should assert its Tx LPI.
813
814 advertise N
815 Sets the speeds for which the device should advertise EEE
816 capabilities. Values are as for --change advertise
817
818 tx-timer N
819 Sets the amount of time the device should stay in idle mode
820 prior to asserting its Tx LPI (in microseconds). This has
821 meaning only when Tx LPI is enabled.
822
823 --set-phy-tunable
824 Sets the PHY tunable parameters.
825
826 downshift on|off
827 Specifies whether downshift should be enabled.
828
829 count N
830 Sets the PHY downshift re-tries count.
831
832 fast-link-down on|off
833 Specifies whether Fast Link Down should be enabled and time
834 until link down (if supported).
835
836 msecs N
837 Sets the period after which the link is reported as down. Note that the PHY may choose
838 the closest supported value. Only on reading back the tunable do you get the actual value.
839
840 energy-detect-power-down on|off
841 Specifies whether Energy Detect Power Down (EDPD) should be
842 enabled (if supported). This will put the RX and TX circuit
843 blocks into a low power mode, and the PHY will wake up peri‐
844 odically to send link pulses to avoid any lock-up situation
845 with a peer PHY that may also have EDPD enabled. By default,
846 this setting will also enable the periodic transmission of
847 TX pulses.
848
849 msecs N
850 Some PHYs support configuration of the wake-up interval to send TX pulses.
851 This setting allows the control of this interval, and 0 disables TX pulses
852 if the PHY supports this. Disabling TX pulses can create a lock-up situation
853 where neither of the PHYs wakes the other one. If unspecified the default
854 value (in milliseconds) will be used by the PHY.
855
856
857 --get-phy-tunable
858 Gets the PHY tunable parameters.
859
860 downshift
861 For operation in cabling environments that are incompatible
862 with 1000BASE-T, PHY device provides an automatic link speed
863 downshift operation. Link speed downshift after N failed
864 1000BASE-T auto-negotiation attempts. Downshift is useful
865 where cable does not have the 4 pairs instance.
866
867 Gets the PHY downshift count/status.
868
869 fast-link-down
870 Depending on the mode it may take 0.5s - 1s until a broken
871 link is reported as down. In certain use cases a link-down
872 event needs to be reported as soon as possible. Some PHYs
873 support a Fast Link Down Feature and may allow configuration
874 of the delay before a broken link is reported as being down.
875
876 Gets the PHY Fast Link Down status / period.
877
878 energy-detect-power-down
879 Gets the current configured setting for Energy Detect Power
880 Down (if supported).
881
882
883 --get-tunable
884 Get the tunable parameters.
885
886 rx-copybreak
887 Get the current rx copybreak value in bytes.
888
889 tx-copybreak
890 Get the current tx copybreak value in bytes.
891
892 pfc-prevention-tout
893 Get the current pfc prevention timeout value in msecs.
894
895 --set-tunable
896 Set driver's tunable parameters.
897
898 rx-copybreak N
899 Set the rx copybreak value in bytes.
900
901 tx-copybreak N
902 Set the tx copybreak value in bytes.
903
904 pfc-prevention-tout N
905 Set pfc prevention timeout in msecs. Value of 0 means dis‐
906 able and 65535 means auto.
907
908 --reset
909 Reset hardware components specified by flags and components
910 listed below
911
912 flags N
913 Resets the components based on direct flags mask
914
915 mgmt Management processor
916
917 irq Interrupt requester
918
919 dma DMA engine
920
921 filter Filtering/flow direction
922
923 offload
924 Protocol offload
925
926 mac Media access controller
927
928 phy Transceiver/PHY
929
930 ram RAM shared between multiple components ap Application Pro‐
931 cessor
932
933 dedicated
934 All components dedicated to this interface
935
936 all All components used by this interface, even if shared
937
938 --show-fec
939 Queries the specified network device for its support of Forward
940 Error Correction.
941
942 --set-fec
943 Configures Forward Error Correction for the specified network
944 device.
945
946 Forward Error Correction modes selected by a user are expected
947 to be persisted after any hotplug events. If a module is swapped
948 that does not support the current FEC mode, the driver or
949 firmware must take the link down administratively and report the
950 problem in the system logs for users to correct.
951
952 encoding auto|off|rs|baser|llrs [...]
953
954 Sets the FEC encoding for the device. Combinations of op‐
955 tions are specified as e.g. encoding auto rs ; the seman‐
956 tics of such combinations vary between drivers.
957
958 auto Use the driver's default encoding
959 off Turn off FEC
960 RS Force RS-FEC encoding
961 BaseR Force BaseR encoding
962 LLRS Force LLRS-FEC encoding
963
964 -Q|--per-queue
965 Applies provided sub command to specific queues.
966
967 queue_mask %x
968 Sets the specific queues which the sub command is applied
969 to. If queue_mask is not set, the sub command will be ap‐
970 plied to all queues.
971
972 sub_command
973 Sub command to apply. The supported sub commands include
974 --show-coalesce and --coalesce.
975
976 q.B --cable-test
977 Perform a cable test and report the results. What results are
978 returned depends on the capabilities of the network interface.
979 Typically open pairs and shorted pairs can be reported, along
980 with pairs being O.K. When a fault is detected the approximate
981 distance to the fault may be reported.
982
983 --cable-test-tdr
984 Perform a cable test and report the raw Time Domain Reflectome‐
985 ter data. A pulse is sent down a cable pair and the amplitude
986 of the reflection, for a given distance, is reported. A break in
987 the cable returns a big reflection. Minor damage to the cable
988 returns a small reflection. If the cable is shorted, the ampli‐
989 tude of the reflection can be negative. By default, data is re‐
990 turned for lengths between 0 and 150m at 1m steps, for all
991 pairs. However parameters can be passed to restrict the collec‐
992 tion of data. It should be noted, that the interface will round
993 the distances to whatever granularity is actually implemented.
994 This is often 0.8 of a meter. The results should include the ac‐
995 tual rounded first and last distance and step size.
996
997 first N
998 Distance along the cable, in meters, where the first mea‐
999 surement should be made.
1000
1001 last N
1002 Distance along the cable, in meters, where the last measure‐
1003 ment should be made.
1004
1005 step N
1006 Distance, in meters, between each measurement.
1007
1008 pair N
1009 Which pair should be measured. Typically a cable has 4
1010 pairs. 0 = Pair A, 1 = Pair B, ...
1011
1012 --monitor
1013 Listens to netlink notification and displays them.
1014
1015 command
1016 If argument matching a command is used, ethtool only shows
1017 notifications of this type. Without such argument or with
1018 --all, all notification types are shown.
1019
1020 devname
1021 If a device name is used as argument, only notification for
1022 this device are shown. Default is to show notifications for
1023 all devices.
1024
1025 --show-tunnels
1026 Show tunnel-related device capabilities and state. List UDP
1027 ports kernel has programmed the device to parse as VxLAN, or
1028 GENEVE tunnels.
1029
1031 Not supported (in part or whole) on all network drivers.
1032
1034 ethtool was written by David Miller.
1035
1036 Modifications by Jeff Garzik, Tim Hockin, Jakub Jelinek, Andre Majorel,
1037 Eli Kupermann, Scott Feldman, Andi Kleen, Alexander Duyck, Sucheta
1038 Chakraborty, Jesse Brandeburg, Ben Hutchings, Scott Branden.
1039
1041 ethtool is available from
1042 ⟨http://www.kernel.org/pub/software/network/ethtool/⟩
1043
1044
1045
1046Ethtool version 5.10 Dec 2020 ETHTOOL(8)