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] [lanes N] [duplex half|full]
68 [port tp|aui|bnc|mii] [mdix auto|on|off] [autoneg on|off]
69 [advertise N[/M] | advertise mode on|off ...] [phyad N]
70 [xcvr internal|external] [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 lanes N
359 Set number of lanes.
360
361 duplex half|full
362 Sets full or half duplex mode.
363
364 port tp|aui|bnc|mii
365 Selects device port.
366
367 master-slave preferred-master|preferred-slave|forced-master|forced-
368 slave
369 Configure MASTER/SLAVE role of the PHY. When the PHY is con‐
370 figured as MASTER, the PMA Transmit function shall source
371 TX_TCLK from a local clock source. When configured as SLAVE,
372 the PMA Transmit function shall source TX_TCLK from the
373 clock recovered from data stream provided by MASTER. Not all
374 devices support this.
375
376 preferred-master Prefer MASTER role on autonegotiation
377 preferred-slave Prefer SLAVE role on autonegotiation
378 forced-master Force the PHY in MASTER role. Can be used without autonegotiation
379 forced-slave Force the PHY in SLAVE role. Can be used without autonegotiation
380
381 mdix auto|on|off
382 Selects MDI-X mode for port. May be used to override the au‐
383 tomatic detection feature of most adapters. An argument of
384 auto means automatic detection of MDI status, on forces MDI-
385 X (crossover) mode, while off means MDI (straight through)
386 mode. The driver should guarantee that this command takes
387 effect immediately, and if necessary may reset the link to
388 cause the change to take effect.
389
390 autoneg on|off
391 Specifies whether autonegotiation should be enabled. Autone‐
392 gotiation is enabled by default, but in some network devices
393 may have trouble with it, so you can disable it if really
394 necessary.
395
396 advertise N
397 Sets the speed and duplex advertised by autonegotiation.
398 The argument is a hexadecimal value using one or a combina‐
399 tion of the following values:
400
401 0x001 10baseT Half
402 0x002 10baseT Full
403 0x004 100baseT Half
404 0x008 100baseT Full
405 0x80000000000000000 100baseT1 Full
406 0x40000000000000000000000 100baseFX Half
407 0x80000000000000000000000 100baseFX Full
408 0x010 1000baseT Half (not supported by IEEE standards)
409 0x020 1000baseT Full
410 0x20000 1000baseKX Full
411 0x20000000000 1000baseX Full
412 0x100000000000000000 1000baseT1 Full
413 0x8000 2500baseX Full (not supported by IEEE standards)
414 0x800000000000 2500baseT Full
415 0x1000000000000 5000baseT Full
416 0x1000 10000baseT Full
417 0x40000 10000baseKX4 Full
418 0x80000 10000baseKR Full
419 0x100000 10000baseR_FEC
420 0x40000000000 10000baseCR Full
421 0x80000000000 10000baseSR Full
422 0x100000000000 10000baseLR Full
423 0x200000000000 10000baseLRM Full
424 0x400000000000 10000baseER Full
425 0x200000 20000baseMLD2 Full (not supported by IEEE standards)
426 0x400000 20000baseKR2 Full (not supported by IEEE standards)
427 0x80000000 25000baseCR Full
428 0x100000000 25000baseKR Full
429 0x200000000 25000baseSR Full
430 0x800000 40000baseKR4 Full
431 0x1000000 40000baseCR4 Full
432 0x2000000 40000baseSR4 Full
433 0x4000000 40000baseLR4 Full
434 0x400000000 50000baseCR2 Full
435 0x800000000 50000baseKR2 Full
436 0x10000000000 50000baseSR2 Full
437 0x10000000000000 50000baseKR Full
438 0x20000000000000 50000baseSR Full
439 0x40000000000000 50000baseCR Full
440 0x80000000000000 50000baseLR_ER_FR Full
441 0x100000000000000 50000baseDR Full
442 0x8000000 56000baseKR4 Full
443 0x10000000 56000baseCR4 Full
444 0x20000000 56000baseSR4 Full
445 0x40000000 56000baseLR4 Full
446 0x1000000000 100000baseKR4 Full
447 0x2000000000 100000baseSR4 Full
448 0x4000000000 100000baseCR4 Full
449 0x8000000000 100000baseLR4_ER4 Full
450 0x200000000000000 100000baseKR2 Full
451 0x400000000000000 100000baseSR2 Full
452 0x800000000000000 100000baseCR2 Full
453 0x1000000000000000 100000baseLR2_ER2_FR2 Full
454 0x2000000000000000 100000baseDR2 Full
455 0x8000000000000000000 100000baseKR Full
456 0x10000000000000000000 100000baseSR Full
457 0x20000000000000000000 100000baseLR_ER_FR Full
458 0x40000000000000000000 100000baseCR Full
459 0x80000000000000000000 100000baseDR Full
460 0x4000000000000000 200000baseKR4 Full
461 0x8000000000000000 200000baseSR4 Full
462 0x10000000000000000 200000baseLR4_ER4_FR4 Full
463 0x20000000000000000 200000baseDR4 Full
464 0x40000000000000000 200000baseCR4 Full
465 0x100000000000000000000 200000baseKR2 Full
466 0x200000000000000000000 200000baseSR2 Full
467 0x400000000000000000000 200000baseLR2_ER2_FR2 Full
468 0x800000000000000000000 200000baseDR2 Full
469 0x1000000000000000000000 200000baseCR2 Full
470 0x200000000000000000 400000baseKR8 Full
471 0x400000000000000000 400000baseSR8 Full
472 0x800000000000000000 400000baseLR8_ER8_FR8 Full
473 0x1000000000000000000 400000baseDR8 Full
474 0x2000000000000000000 400000baseCR8 Full
475 0x2000000000000000000000 400000baseKR4 Full
476 0x4000000000000000000000 400000baseSR4 Full
477 0x8000000000000000000000 400000baseLR4_ER4_FR4 Full
478 0x10000000000000000000000 400000baseDR4 Full
479 0x20000000000000000000000 400000baseCR4 Full
480
481 phyad N
482 PHY address.
483
484 xcvr internal|external
485 Selects transceiver type. Currently only internal and exter‐
486 nal can be specified, in the future further types might be
487 added.
488
489 wol p|u|m|b|a|g|s|f|d...
490 Sets Wake-on-LAN options. Not all devices support this.
491 The argument to this option is a string of characters speci‐
492 fying which options to enable.
493
494 p Wake on PHY activity
495 u Wake on unicast messages
496 m Wake on multicast messages
497 b Wake on broadcast messages
498 a Wake on ARP
499 g Wake on MagicPacket™
500 s Enable SecureOn™ password for MagicPacket™
501 f Wake on filter(s)
502 d Disable (wake on nothing). This option
503 clears all previous options.
504
505 sopass xx:yy:zz:aa:bb:cc
506 Sets the SecureOn™ password. The argument to this option
507 must be 6 bytes in Ethernet MAC hex format
508 (xx:yy:zz:aa:bb:cc).
509
510 msglvl N
511 msglvl type on|off ...
512 Sets the driver message type flags by name or number. type
513 names the type of message to enable or disable; N specifies
514 the new flags numerically. The defined type names and num‐
515 bers are:
516
517 drv 0x0001 General driver status
518 probe 0x0002 Hardware probing
519 link 0x0004 Link state
520 timer 0x0008 Periodic status check
521 ifdown 0x0010 Interface being brought down
522 ifup 0x0020 Interface being brought up
523 rx_err 0x0040 Receive error
524 tx_err 0x0080 Transmit error
525 tx_queued 0x0100 Transmit queueing
526 intr 0x0200 Interrupt handling
527 tx_done 0x0400 Transmit completion
528 rx_status 0x0800 Receive completion
529 pktdata 0x1000 Packet contents
530 hw 0x2000 Hardware status
531 wol 0x4000 Wake-on-LAN status
532
533 The precise meanings of these type flags differ between
534 drivers.
535
536 -n -u --show-nfc --show-ntuple
537 Retrieves receive network flow classification options or rules.
538
539 rx-flow-hash tcp4|udp4|ah4|esp4|sctp4|tcp6|udp6|ah6|esp6|sctp6
540 Retrieves the hash options for the specified flow type.
541
542 tcp4 TCP over IPv4
543 udp4 UDP over IPv4
544 ah4 IPSEC AH over IPv4
545 esp4 IPSEC ESP over IPv4
546 sctp4 SCTP over IPv4
547 tcp6 TCP over IPv6
548 udp6 UDP over IPv6
549 ah6 IPSEC AH over IPv6
550 esp6 IPSEC ESP over IPv6
551 sctp6 SCTP over IPv6
552
553 rule N Retrieves the RX classification rule with the given ID.
554
555 -N -U --config-nfc --config-ntuple
556 Configures receive network flow classification options or rules.
557
558 rx-flow-hash tcp4|udp4|ah4|esp4|sctp4|tcp6|udp6|ah6|esp6|sctp6
559 m|v|t|s|d|f|n|r...
560 Configures the hash options for the specified flow type.
561
562 m Hash on the Layer 2 destination address of the rx packet.
563 v Hash on the VLAN tag of the rx packet.
564 t Hash on the Layer 3 protocol field of the rx packet.
565 s Hash on the IP source address of the rx packet.
566 d Hash on the IP destination address of the rx packet.
567 f Hash on bytes 0 and 1 of the Layer 4 header of the rx packet.
568 n Hash on bytes 2 and 3 of the Layer 4 header of the rx packet.
569 r Discard all packets of this flow type. When this option is
570 set, all other options are ignored.
571
572 flow-type
573 ether|ip4|tcp4|udp4|sctp4|ah4|esp4|ip6|tcp6|udp6|ah6|esp6|sctp6
574 Inserts or updates a classification rule for the specified
575 flow type.
576
577 ether Ethernet
578 ip4 Raw IPv4
579 tcp4 TCP over IPv4
580 udp4 UDP over IPv4
581 sctp4 SCTP over IPv4
582 ah4 IPSEC AH over IPv4
583 esp4 IPSEC ESP over IPv4
584 ip6 Raw IPv6
585 tcp6 TCP over IPv6
586 udp6 UDP over IPv6
587 sctp6 SCTP over IPv6
588 ah6 IPSEC AH over IPv6
589 esp6 IPSEC ESP over IPv6
590
591 For all fields that allow both a value and a mask to be specified,
592 the mask may be specified immediately after the value using the m
593 keyword, or separately using the field name keyword with -mask ap‐
594 pended, e.g. src-mask.
595
596 src xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]
597 Includes the source MAC address, specified as 6 bytes in
598 hexadecimal separated by colons, along with an optional
599 mask. Valid only for flow-type ether.
600
601 dst xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]
602 Includes the destination MAC address, specified as 6 bytes
603 in hexadecimal separated by colons, along with an optional
604 mask. Valid only for flow-type ether.
605
606 proto N [m N]
607 Includes the Ethernet protocol number (ethertype) and an op‐
608 tional mask. Valid only for flow-type ether.
609
610 src-ip ip-address [m ip-address]
611 Specify the source IP address of the incoming packet to
612 match along with an optional mask. Valid for all IP based
613 flow-types.
614
615 dst-ip ip-address [m ip-address]
616 Specify the destination IP address of the incoming packet to
617 match along with an optional mask. Valid for all IP based
618 flow-types.
619
620 tos N [m N]
621 Specify the value of the Type of Service field in the incom‐
622 ing packet to match along with an optional mask. Applies to
623 all IPv4 based flow-types.
624
625 tclass N [m N]
626 Specify the value of the Traffic Class field in the incoming
627 packet to match along with an optional mask. Applies to all
628 IPv6 based flow-types.
629
630 l4proto N [m N]
631 Includes the layer 4 protocol number and optional mask.
632 Valid only for flow-types ip4 and ip6.
633
634 src-port N [m N]
635 Specify the value of the source port field (applicable to
636 TCP/UDP packets) in the incoming packet to match along with
637 an optional mask. Valid for flow-types ip4, tcp4, udp4, and
638 sctp4 and their IPv6 equivalents.
639
640 dst-port N [m N]
641 Specify the value of the destination port field (applicable
642 to TCP/UDP packets)in the incoming packet to match along
643 with an optional mask. Valid for flow-types ip4, tcp4,
644 udp4, and sctp4 and their IPv6 equivalents.
645
646 spi N [m N]
647 Specify the value of the security parameter index field (ap‐
648 plicable to AH/ESP packets)in the incoming packet to match
649 along with an optional mask. Valid for flow-types ip4, ah4,
650 and esp4 and their IPv6 equivalents.
651
652 l4data N [m N]
653 Specify the value of the first 4 Bytes of Layer 4 in the in‐
654 coming packet to match along with an optional mask. Valid
655 for ip4 and ip6 flow-types.
656
657 vlan-etype N [m N]
658 Includes the VLAN tag Ethertype and an optional mask.
659
660 vlan N [m N]
661 Includes the VLAN tag and an optional mask.
662
663 user-def N [m N]
664 Includes 64-bits of user-specific data and an optional mask.
665
666 dst-mac xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]
667 Includes the destination MAC address, specified as 6 bytes
668 in hexadecimal separated by colons, along with an optional
669 mask. Valid for all IP based flow-types.
670
671 action N
672 Specifies the Rx queue to send packets to, or some other ac‐
673 tion.
674
675 -1 Drop the matched flow
676 -2 Use the matched flow as a Wake-on-LAN filter
677 0 or higher Rx queue to route the flow
678
679 context N
680 Specifies the RSS context to spread packets over multiple
681 queues; either 0 for the default RSS context, or a value re‐
682 turned by ethtool -X ... context new.
683
684 vf N Specifies the Virtual Function the filter applies to. Not
685 compatible with action.
686
687 queue N
688 Specifies the Rx queue to send packets to. Not compatible
689 with action.
690
691 loc N Specify the location/ID to insert the rule. This will over‐
692 write any rule present in that location and will not go
693 through any of the rule ordering process.
694
695 delete N
696 Deletes the RX classification rule with the given ID.
697
698 -w --get-dump
699 Retrieves and prints firmware dump for the specified network de‐
700 vice. By default, it prints out the dump flag, version and
701 length of the dump data. When data is indicated, then ethtool
702 fetches the dump data and directs it to a file.
703
704 -W --set-dump
705 Sets the dump flag for the device.
706
707 -T --show-time-stamping
708 Show the device's time stamping capabilities and associated PTP
709 hardware clock.
710
711 -x --show-rxfh-indir --show-rxfh
712 Retrieves the receive flow hash indirection table and/or RSS
713 hash key.
714
715 -X --set-rxfh-indir --rxfh
716 Configures the receive flow hash indirection table and/or RSS
717 hash key.
718
719 hkey Sets RSS hash key of the specified network device. RSS hash
720 key should be of device supported length. Hash key format
721 must be in xx:yy:zz:aa:bb:cc format meaning both the nibbles
722 of a byte should be mentioned even if a nibble is zero.
723
724 hfunc Sets RSS hash function of the specified network device.
725 List of RSS hash functions which kernel supports is shown as
726 a part of the --show-rxfh command output.
727
728 start N
729 For the equal and weight options, sets the starting receive
730 queue for spreading flows to N.
731
732 equal N
733 Sets the receive flow hash indirection table to spread flows
734 evenly between the first N receive queues.
735
736 weight W0 W1 ...
737 Sets the receive flow hash indirection table to spread flows
738 between receive queues according to the given weights. The
739 sum of the weights must be non-zero and must not exceed the
740 size of the indirection table.
741
742 default
743 Sets the receive flow hash indirection table to its default
744 value.
745
746 context CTX | new
747 Specifies an RSS context to act on; either new to allocate a
748 new RSS context, or CTX, a value returned by a previous
749 ... context new.
750
751 delete Delete the specified RSS context. May only be used in con‐
752 junction with context and a non-zero CTX value.
753
754 -f --flash
755 Write a firmware image to flash or other non-volatile memory on
756 the device.
757
758 file Specifies the filename of the firmware image. The firmware
759 must first be installed in one of the directories where the
760 kernel firmware loader or firmware agent will look, such as
761 /lib/firmware.
762
763 N If the device stores multiple firmware images in separate
764 regions of non-volatile memory, this parameter may be used
765 to specify which region is to be written. The default is 0,
766 requesting that all regions are written. All other values
767 are driver-dependent.
768
769 -l --show-channels
770 Queries the specified network device for the numbers of channels
771 it has. A channel is an IRQ and the set of queues that can
772 trigger that IRQ.
773
774 -L --set-channels
775 Changes the numbers of channels of the specified network device.
776
777 rx N Changes the number of channels with only receive queues.
778
779 tx N Changes the number of channels with only transmit queues.
780
781 other N
782 Changes the number of channels used only for other purposes
783 e.g. link interrupts or SR-IOV co-ordination.
784
785 combined N
786 Changes the number of multi-purpose channels.
787
788 -m --dump-module-eeprom --module-info
789 Retrieves and if possible decodes the EEPROM from plugin mod‐
790 ules, e.g SFP+, QSFP. If the driver and module support it, the
791 optical diagnostic information is also read and decoded.
792
793 --show-priv-flags
794 Queries the specified network device for its private flags. The
795 names and meanings of private flags (if any) are defined by each
796 network device driver.
797
798 --set-priv-flags
799 Sets the device's private flags as specified.
800
801 flag on|off Sets the state of the named private flag.
802
803 --show-eee
804 Queries the specified network device for its support of Energy-
805 Efficient Ethernet (according to the IEEE 802.3az specifica‐
806 tions)
807
808 --set-eee
809 Sets the device EEE behaviour.
810
811 eee on|off
812 Enables/disables the device support of EEE.
813
814 tx-lpi on|off
815 Determines whether the device should assert its Tx LPI.
816
817 advertise N
818 Sets the speeds for which the device should advertise EEE
819 capabilities. Values are as for --change advertise
820
821 tx-timer N
822 Sets the amount of time the device should stay in idle mode
823 prior to asserting its Tx LPI (in microseconds). This has
824 meaning only when Tx LPI is enabled.
825
826 --set-phy-tunable
827 Sets the PHY tunable parameters.
828
829 downshift on|off
830 Specifies whether downshift should be enabled.
831
832 count N
833 Sets the PHY downshift re-tries count.
834
835 fast-link-down on|off
836 Specifies whether Fast Link Down should be enabled and time
837 until link down (if supported).
838
839 msecs N
840 Sets the period after which the link is reported as down. Note that the PHY may choose
841 the closest supported value. Only on reading back the tunable do you get the actual value.
842
843 energy-detect-power-down on|off
844 Specifies whether Energy Detect Power Down (EDPD) should be
845 enabled (if supported). This will put the RX and TX circuit
846 blocks into a low power mode, and the PHY will wake up peri‐
847 odically to send link pulses to avoid any lock-up situation
848 with a peer PHY that may also have EDPD enabled. By default,
849 this setting will also enable the periodic transmission of
850 TX pulses.
851
852 msecs N
853 Some PHYs support configuration of the wake-up interval to send TX pulses.
854 This setting allows the control of this interval, and 0 disables TX pulses
855 if the PHY supports this. Disabling TX pulses can create a lock-up situation
856 where neither of the PHYs wakes the other one. If unspecified the default
857 value (in milliseconds) will be used by the PHY.
858
859
860 --get-phy-tunable
861 Gets the PHY tunable parameters.
862
863 downshift
864 For operation in cabling environments that are incompatible
865 with 1000BASE-T, PHY device provides an automatic link speed
866 downshift operation. Link speed downshift after N failed
867 1000BASE-T auto-negotiation attempts. Downshift is useful
868 where cable does not have the 4 pairs instance.
869
870 Gets the PHY downshift count/status.
871
872 fast-link-down
873 Depending on the mode it may take 0.5s - 1s until a broken
874 link is reported as down. In certain use cases a link-down
875 event needs to be reported as soon as possible. Some PHYs
876 support a Fast Link Down Feature and may allow configuration
877 of the delay before a broken link is reported as being down.
878
879 Gets the PHY Fast Link Down status / period.
880
881 energy-detect-power-down
882 Gets the current configured setting for Energy Detect Power
883 Down (if supported).
884
885
886 --get-tunable
887 Get the tunable parameters.
888
889 rx-copybreak
890 Get the current rx copybreak value in bytes.
891
892 tx-copybreak
893 Get the current tx copybreak value in bytes.
894
895 pfc-prevention-tout
896 Get the current pfc prevention timeout value in msecs.
897
898 --set-tunable
899 Set driver's tunable parameters.
900
901 rx-copybreak N
902 Set the rx copybreak value in bytes.
903
904 tx-copybreak N
905 Set the tx copybreak value in bytes.
906
907 pfc-prevention-tout N
908 Set pfc prevention timeout in msecs. Value of 0 means dis‐
909 able and 65535 means auto.
910
911 --reset
912 Reset hardware components specified by flags and components
913 listed below
914
915 flags N
916 Resets the components based on direct flags mask
917
918 mgmt Management processor
919
920 irq Interrupt requester
921
922 dma DMA engine
923
924 filter Filtering/flow direction
925
926 offload
927 Protocol offload
928
929 mac Media access controller
930
931 phy Transceiver/PHY
932
933 ram RAM shared between multiple components ap Application Pro‐
934 cessor
935
936 dedicated
937 All components dedicated to this interface
938
939 all All components used by this interface, even if shared
940
941 --show-fec
942 Queries the specified network device for its support of Forward
943 Error Correction.
944
945 --set-fec
946 Configures Forward Error Correction for the specified network
947 device.
948
949 Forward Error Correction modes selected by a user are expected
950 to be persisted after any hotplug events. If a module is swapped
951 that does not support the current FEC mode, the driver or
952 firmware must take the link down administratively and report the
953 problem in the system logs for users to correct.
954
955 encoding auto|off|rs|baser|llrs [...]
956
957 Sets the FEC encoding for the device. Combinations of op‐
958 tions are specified as e.g. encoding auto rs ; the seman‐
959 tics of such combinations vary between drivers.
960
961 auto Use the driver's default encoding
962 off Turn off FEC
963 RS Force RS-FEC encoding
964 BaseR Force BaseR encoding
965 LLRS Force LLRS-FEC encoding
966
967 -Q|--per-queue
968 Applies provided sub command to specific queues.
969
970 queue_mask %x
971 Sets the specific queues which the sub command is applied
972 to. If queue_mask is not set, the sub command will be ap‐
973 plied to all queues.
974
975 sub_command
976 Sub command to apply. The supported sub commands include
977 --show-coalesce and --coalesce.
978
979 q.B --cable-test
980 Perform a cable test and report the results. What results are
981 returned depends on the capabilities of the network interface.
982 Typically open pairs and shorted pairs can be reported, along
983 with pairs being O.K. When a fault is detected the approximate
984 distance to the fault may be reported.
985
986 --cable-test-tdr
987 Perform a cable test and report the raw Time Domain Reflectome‐
988 ter data. A pulse is sent down a cable pair and the amplitude
989 of the reflection, for a given distance, is reported. A break in
990 the cable returns a big reflection. Minor damage to the cable
991 returns a small reflection. If the cable is shorted, the ampli‐
992 tude of the reflection can be negative. By default, data is re‐
993 turned for lengths between 0 and 150m at 1m steps, for all
994 pairs. However parameters can be passed to restrict the collec‐
995 tion of data. It should be noted, that the interface will round
996 the distances to whatever granularity is actually implemented.
997 This is often 0.8 of a meter. The results should include the ac‐
998 tual rounded first and last distance and step size.
999
1000 first N
1001 Distance along the cable, in meters, where the first mea‐
1002 surement should be made.
1003
1004 last N
1005 Distance along the cable, in meters, where the last measure‐
1006 ment should be made.
1007
1008 step N
1009 Distance, in meters, between each measurement.
1010
1011 pair N
1012 Which pair should be measured. Typically a cable has 4
1013 pairs. 0 = Pair A, 1 = Pair B, ...
1014
1015 --monitor
1016 Listens to netlink notification and displays them.
1017
1018 command
1019 If argument matching a command is used, ethtool only shows
1020 notifications of this type. Without such argument or with
1021 --all, all notification types are shown.
1022
1023 devname
1024 If a device name is used as argument, only notification for
1025 this device are shown. Default is to show notifications for
1026 all devices.
1027
1028 --show-tunnels
1029 Show tunnel-related device capabilities and state. List UDP
1030 ports kernel has programmed the device to parse as VxLAN, or
1031 GENEVE tunnels.
1032
1034 Not supported (in part or whole) on all network drivers.
1035
1037 ethtool was written by David Miller.
1038
1039 Modifications by Jeff Garzik, Tim Hockin, Jakub Jelinek, Andre Majorel,
1040 Eli Kupermann, Scott Feldman, Andi Kleen, Alexander Duyck, Sucheta
1041 Chakraborty, Jesse Brandeburg, Ben Hutchings, Scott Branden.
1042
1044 ethtool is available from
1045 ⟨http://www.kernel.org/pub/software/network/ethtool/⟩
1046
1047
1048
1049Ethtool version 5.12 May 2021 ETHTOOL(8)