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