summaryrefslogtreecommitdiff
path: root/Documentation/ABI/testing/sysfs-class-net
blob: 1419103d11f97705178d0bf4f6ce6bf5782c2f83 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
What:		/sys/class/net/<iface>/name_assign_type
Date:		July 2014
KernelVersion:	3.17
Contact:	netdev@vger.kernel.org
Description:
		Indicates the name assignment type. Possible values are:

		== ==========================================================
		1  enumerated by the kernel, possibly in an unpredictable way
		2  predictably named by the kernel
		3  named by userspace
		4  renamed
		== ==========================================================

What:		/sys/class/net/<iface>/addr_assign_type
Date:		July 2010
KernelVersion:	3.2
Contact:	netdev@vger.kernel.org
Description:
		Indicates the address assignment type. Possible values are:

		== =============================
		0  permanent address
		1  randomly generated
		2  stolen from another device
		3  set using dev_set_mac_address
		== =============================

What:		/sys/class/net/<iface>/addr_len
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Indicates the hardware address size in bytes.
		Values vary based on the lower-level protocol used by the
		interface (Ethernet, FDDI, ATM, IEEE 802.15.4...). See
		include/uapi/linux/if_*.h for actual values.

What:		/sys/class/net/<iface>/address
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Hardware address currently assigned to this interface.
		Format is a string, e.g: 00:11:22:33:44:55 for an Ethernet MAC
		address.

What:		/sys/class/net/<bridge iface>/bridge/group_fwd_mask
Date:		January 2012
KernelVersion:	3.2
Contact:	netdev@vger.kernel.org
Description:
		Bitmask to allow forwarding of link local frames with address
		01-80-C2-00-00-0X on a bridge device. Only values that set bits
		not matching BR_GROUPFWD_RESTRICTED in net/bridge/br_private.h
		allowed.
		Default value 0 does not forward any link local frames.

		Restricted bits:

		== ========================================================
		0  01-80-C2-00-00-00 Bridge Group Address used for STP
		1  01-80-C2-00-00-01 (MAC Control) 802.3 used for MAC PAUSE
		2  01-80-C2-00-00-02 (Link Aggregation) 802.3ad
		== ========================================================

		Any values not setting these bits can be used. Take special
		care when forwarding control frames e.g. 802.1X-PAE or LLDP.

What:		/sys/class/net/<iface>/broadcast
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Hardware broadcast address for this interface. Format is a
		string, e.g: ff:ff:ff:ff:ff:ff for an Ethernet broadcast MAC
		address.

What:		/sys/class/net/<iface>/carrier
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Indicates the current physical link state of the interface.
		Posssible values are:

		== =====================
		0  physical link is down
		1  physical link is up
		== =====================

		Note: some special devices, e.g: bonding and team drivers will
		allow this attribute to be written to force a link state for
		operating correctly and designating another fallback interface.

What:		/sys/class/net/<iface>/dev_id
Date:		April 2008
KernelVersion:	2.6.26
Contact:	netdev@vger.kernel.org
Description:
		Indicates the device unique identifier. Format is an hexadecimal
		value. This is used to disambiguate interfaces which might be
		stacked (e.g: VLAN interfaces) but still have the same MAC
		address as their parent device.

What:		/sys/class/net/<iface>/dev_port
Date:		February 2014
KernelVersion:	3.15
Contact:	netdev@vger.kernel.org
Description:
		Indicates the port number of this network device, formatted
		as a decimal value. Some NICs have multiple independent ports
		on the same PCI bus, device and function. This attribute allows
		userspace to distinguish the respective interfaces.

		Note: some device drivers started to use 'dev_id' for this
		purpose since long before 3.15 and have not adopted the new
		attribute ever since. To query the port number, some tools look
		exclusively at 'dev_port', while others only consult 'dev_id'.
		If a network device has multiple client adapter ports as
		described in the previous paragraph and does not set this
		attribute to its port number, it's a kernel bug.

What:		/sys/class/net/<iface>/dormant
Date:		March 2006
KernelVersion:	2.6.17
Contact:	netdev@vger.kernel.org
Description:
		Indicates whether the interface is in dormant state. Possible
		values are:
		0: interface is not dormant
		1: interface is dormant

		This attribute can be used by supplicant software to signal that
		the device is not usable unless some supplicant-based
		authentication is performed (e.g: 802.1x). 'link_mode' attribute
		will also reflect the dormant state.

What:		/sys/class/net/<iface>/testing
Date:		April 2002
KernelVersion:	5.8
Contact:	netdev@vger.kernel.org
Description:
		Indicates whether the interface is under test. Possible
		values are:

		== =============================
		0  interface is not being tested
		1  interface is being tested
		== =============================

		When an interface is under test, it cannot be expected
		to pass packets as normal.

What:		/sys/class/net/<iface>/duplex
Date:		October 2009
KernelVersion:	2.6.33
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface latest or current duplex value. Possible
		values are:

		====  ===========
		half  half duplex
		full  full duplex
		====  ===========

		Note: This attribute is only valid for interfaces that implement
		the ethtool get_link_ksettings method (mostly Ethernet).

What:		/sys/class/net/<iface>/flags
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface flags as a bitmask in hexadecimal. See
		include/uapi/linux/if.h for a list of all possible values and
		the flags semantics.

What:		/sys/class/net/<iface>/ifalias
Date:		September 2008
KernelVersion:	2.6.28
Contact:	netdev@vger.kernel.org
Description:
		Indicates/stores an interface alias name as a string. This can
		be used for system management purposes.

What:		/sys/class/net/<iface>/ifindex
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Indicates the system-wide interface unique index identifier as a
		decimal number. This attribute is used for mapping an interface
		identifier to an interface name. It is used throughout the
		networking stack for specifying the interface specific
		requests/events.

What:		/sys/class/net/<iface>/iflink
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Indicates the system-wide interface unique index identifier a
		the interface is linked to. Format is decimal. This attribute is
		used to resolve interfaces chaining, linking and stacking.
		Physical interfaces have the same 'ifindex' and 'iflink' values.

What:		/sys/class/net/<iface>/link_mode
Date:		March 2006
KernelVersion:	2.6.17
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface link mode, as a decimal number. This
		attribute should be used in conjunction with 'dormant' attribute
		to determine the interface usability. Possible values:

		==  =================
		0   default link mode
		1   dormant link mode
		==  =================

What:		/sys/class/net/<iface>/mtu
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface currently configured MTU value, in
		bytes, and in decimal format. Specific values depends on the
		lower-level interface protocol used. Ethernet devices will show
		a 'mtu' attribute value of 1500 unless changed.

What:		/sys/class/net/<iface>/netdev_group
Date:		January 2011
KernelVersion:	2.6.39
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface network device group, as a decimal
		integer. Default value is 0 which corresponds to the initial
		network devices group. The group can be changed to affect
		routing decisions (see: net/ipv4/fib_rules and
		net/ipv6/fib6_rules.c).

What:		/sys/class/net/<iface>/operstate
Date:		March 2006
KernelVersion:	2.6.17
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface RFC2863 operational state as a string.

		Possible values are:

		"unknown", "notpresent", "down", "lowerlayerdown", "testing",
		"dormant", "up".

What:		/sys/class/net/<iface>/phys_port_id
Date:		July 2013
KernelVersion:	3.12
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface unique physical port identifier within
		the NIC, as a string.

What:		/sys/class/net/<iface>/phys_port_name
Date:		March 2015
KernelVersion:	4.0
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface physical port name within the NIC,
		as a string.

What:		/sys/class/net/<iface>/speed
Date:		October 2009
KernelVersion:	2.6.33
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface latest or current speed value. Value is
		an integer representing the link speed in Mbits/sec.

		Note: this attribute is only valid for interfaces that implement
		the ethtool get_link_ksettings method (mostly Ethernet).

What:		/sys/class/net/<iface>/tx_queue_len
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface transmit queue len in number of packets,
		as an integer value. Value depend on the type of interface,
		Ethernet network adapters have a default value of 1000 unless
		configured otherwise

What:		/sys/class/net/<iface>/type
Date:		April 2005
KernelVersion:	2.6.12
Contact:	netdev@vger.kernel.org
Description:
		Indicates the interface protocol type as a decimal value. See
		include/uapi/linux/if_arp.h for all possible values.

What:		/sys/class/net/<iface>/phys_switch_id
Date:		November 2014
KernelVersion:	3.19
Contact:	netdev@vger.kernel.org
Description:
		Indicates the unique physical switch identifier of a switch this
		port belongs to, as a string.

What:		/sys/class/net/<iface>/phydev
Date:		May 2017
KernelVersion:	4.13
Contact:	netdev@vger.kernel.org
Description:
		Symbolic link to the PHY device this network device is attached
		to.

What:		/sys/class/net/<iface>/carrier_changes
Date:		Mar 2014
KernelVersion:	3.15
Contact:	netdev@vger.kernel.org
Description:
		32-bit unsigned integer counting the number of times the link has
		seen a change from UP to DOWN and vice versa

What:		/sys/class/net/<iface>/carrier_up_count
Date:		Jan 2018
KernelVersion:	4.16
Contact:	netdev@vger.kernel.org
Description:
		32-bit unsigned integer counting the number of times the link has
		been up

What:		/sys/class/net/<iface>/carrier_down_count
Date:		Jan 2018
KernelVersion:	4.16
Contact:	netdev@vger.kernel.org
Description:
		32-bit unsigned integer counting the number of times the link has
		been down

What:		/sys/class/net/<iface>/threaded
Date:		Jan 2021
KernelVersion:	5.12
Contact:	netdev@vger.kernel.org
Description:
		Boolean value to control the threaded mode per device. User could
		set this value to enable/disable threaded mode for all napi
		belonging to this device, without the need to do device up/down.

		Possible values:
		== ==================================
		0  threaded mode disabled for this dev
		1  threaded mode enabled for this dev
		== ==================================