xref: /linux/Documentation/ABI/testing/sysfs-class-net (revision 4b132aacb0768ac1e652cf517097ea6f237214b9)
1What:		/sys/class/net/<iface>/name_assign_type
2Date:		July 2014
3KernelVersion:	3.17
4Contact:	netdev@vger.kernel.org
5Description:
6		Indicates the name assignment type. Possible values are:
7
8		== ==========================================================
9		1  enumerated by the kernel, possibly in an unpredictable way
10		2  predictably named by the kernel
11		3  named by userspace
12		4  renamed
13		== ==========================================================
14
15What:		/sys/class/net/<iface>/addr_assign_type
16Date:		July 2010
17KernelVersion:	3.2
18Contact:	netdev@vger.kernel.org
19Description:
20		Indicates the address assignment type. Possible values are:
21
22		== =============================
23		0  permanent address
24		1  randomly generated
25		2  stolen from another device
26		3  set using dev_set_mac_address
27		== =============================
28
29What:		/sys/class/net/<iface>/addr_len
30Date:		April 2005
31KernelVersion:	2.6.12
32Contact:	netdev@vger.kernel.org
33Description:
34		Indicates the hardware address size in bytes.
35		Values vary based on the lower-level protocol used by the
36		interface (Ethernet, FDDI, ATM, IEEE 802.15.4...). See
37		include/uapi/linux/if_*.h for actual values.
38
39What:		/sys/class/net/<iface>/address
40Date:		April 2005
41KernelVersion:	2.6.12
42Contact:	netdev@vger.kernel.org
43Description:
44		Hardware address currently assigned to this interface.
45		Format is a string, e.g: 00:11:22:33:44:55 for an Ethernet MAC
46		address.
47
48What:		/sys/class/net/<bridge iface>/bridge/group_fwd_mask
49Date:		January 2012
50KernelVersion:	3.2
51Contact:	netdev@vger.kernel.org
52Description:
53		Bitmask to allow forwarding of link local frames with address
54		01-80-C2-00-00-0X on a bridge device. Only values that set bits
55		not matching BR_GROUPFWD_RESTRICTED in net/bridge/br_private.h
56		allowed.
57		Default value 0 does not forward any link local frames.
58
59		Restricted bits:
60
61		== ========================================================
62		0  01-80-C2-00-00-00 Bridge Group Address used for STP
63		1  01-80-C2-00-00-01 (MAC Control) 802.3 used for MAC PAUSE
64		2  01-80-C2-00-00-02 (Link Aggregation) 802.3ad
65		== ========================================================
66
67		Any values not setting these bits can be used. Take special
68		care when forwarding control frames e.g. 802.1X-PAE or LLDP.
69
70What:		/sys/class/net/<iface>/broadcast
71Date:		April 2005
72KernelVersion:	2.6.12
73Contact:	netdev@vger.kernel.org
74Description:
75		Hardware broadcast address for this interface. Format is a
76		string, e.g: ff:ff:ff:ff:ff:ff for an Ethernet broadcast MAC
77		address.
78
79What:		/sys/class/net/<iface>/carrier
80Date:		April 2005
81KernelVersion:	2.6.12
82Contact:	netdev@vger.kernel.org
83Description:
84		Indicates the current physical link state of the interface.
85		Possible values are:
86
87		== =====================
88		0  physical link is down
89		1  physical link is up
90		== =====================
91
92		Note: some special devices, e.g: bonding and team drivers will
93		allow this attribute to be written to force a link state for
94		operating correctly and designating another fallback interface.
95
96What:		/sys/class/net/<iface>/dev_id
97Date:		April 2008
98KernelVersion:	2.6.26
99Contact:	netdev@vger.kernel.org
100Description:
101		Indicates the device unique identifier. Format is an hexadecimal
102		value. This is used to disambiguate interfaces which might be
103		stacked (e.g: VLAN interfaces) but still have the same MAC
104		address as their parent device.
105
106What:		/sys/class/net/<iface>/dev_port
107Date:		February 2014
108KernelVersion:	3.15
109Contact:	netdev@vger.kernel.org
110Description:
111		Indicates the port number of this network device, formatted
112		as a decimal value. Some NICs have multiple independent ports
113		on the same PCI bus, device and function. This attribute allows
114		userspace to distinguish the respective interfaces.
115
116		Note: some device drivers started to use 'dev_id' for this
117		purpose since long before 3.15 and have not adopted the new
118		attribute ever since. To query the port number, some tools look
119		exclusively at 'dev_port', while others only consult 'dev_id'.
120		If a network device has multiple client adapter ports as
121		described in the previous paragraph and does not set this
122		attribute to its port number, it's a kernel bug.
123
124What:		/sys/class/net/<iface>/dormant
125Date:		March 2006
126KernelVersion:	2.6.17
127Contact:	netdev@vger.kernel.org
128Description:
129		Indicates whether the interface is in dormant state. Possible
130		values are:
131		0: interface is not dormant
132		1: interface is dormant
133
134		This attribute can be used by supplicant software to signal that
135		the device is not usable unless some supplicant-based
136		authentication is performed (e.g: 802.1x). 'link_mode' attribute
137		will also reflect the dormant state.
138
139What:		/sys/class/net/<iface>/testing
140Date:		April 2002
141KernelVersion:	5.8
142Contact:	netdev@vger.kernel.org
143Description:
144		Indicates whether the interface is under test. Possible
145		values are:
146
147		== =============================
148		0  interface is not being tested
149		1  interface is being tested
150		== =============================
151
152		When an interface is under test, it cannot be expected
153		to pass packets as normal.
154
155What:		/sys/class/net/<iface>/duplex
156Date:		October 2009
157KernelVersion:	2.6.33
158Contact:	netdev@vger.kernel.org
159Description:
160		Indicates the interface latest or current duplex value. Possible
161		values are:
162
163		====  ===========
164		half  half duplex
165		full  full duplex
166		====  ===========
167
168		Note: This attribute is only valid for interfaces that implement
169		the ethtool get_link_ksettings method (mostly Ethernet).
170
171What:		/sys/class/net/<iface>/flags
172Date:		April 2005
173KernelVersion:	2.6.12
174Contact:	netdev@vger.kernel.org
175Description:
176		Indicates the interface flags as a bitmask in hexadecimal. See
177		include/uapi/linux/if.h for a list of all possible values and
178		the flags semantics.
179
180What:		/sys/class/net/<iface>/ifalias
181Date:		September 2008
182KernelVersion:	2.6.28
183Contact:	netdev@vger.kernel.org
184Description:
185		Indicates/stores an interface alias name as a string. This can
186		be used for system management purposes.
187
188What:		/sys/class/net/<iface>/ifindex
189Date:		April 2005
190KernelVersion:	2.6.12
191Contact:	netdev@vger.kernel.org
192Description:
193		Indicates the system-wide interface unique index identifier as a
194		decimal number. This attribute is used for mapping an interface
195		identifier to an interface name. It is used throughout the
196		networking stack for specifying the interface specific
197		requests/events.
198
199What:		/sys/class/net/<iface>/iflink
200Date:		April 2005
201KernelVersion:	2.6.12
202Contact:	netdev@vger.kernel.org
203Description:
204		Indicates the system-wide interface unique index identifier a
205		the interface is linked to. Format is decimal. This attribute is
206		used to resolve interfaces chaining, linking and stacking.
207		Physical interfaces have the same 'ifindex' and 'iflink' values.
208
209What:		/sys/class/net/<iface>/link_mode
210Date:		March 2006
211KernelVersion:	2.6.17
212Contact:	netdev@vger.kernel.org
213Description:
214		Indicates the interface link mode, as a decimal number. This
215		attribute should be used in conjunction with 'dormant' attribute
216		to determine the interface usability. Possible values:
217
218		==  =================
219		0   default link mode
220		1   dormant link mode
221		==  =================
222
223What:		/sys/class/net/<iface>/mtu
224Date:		April 2005
225KernelVersion:	2.6.12
226Contact:	netdev@vger.kernel.org
227Description:
228		Indicates the interface currently configured MTU value, in
229		bytes, and in decimal format. Specific values depends on the
230		lower-level interface protocol used. Ethernet devices will show
231		a 'mtu' attribute value of 1500 unless changed.
232
233What:		/sys/class/net/<iface>/netdev_group
234Date:		January 2011
235KernelVersion:	2.6.39
236Contact:	netdev@vger.kernel.org
237Description:
238		Indicates the interface network device group, as a decimal
239		integer. Default value is 0 which corresponds to the initial
240		network devices group. The group can be changed to affect
241		routing decisions (see: net/ipv4/fib_rules and
242		net/ipv6/fib6_rules.c).
243
244What:		/sys/class/net/<iface>/operstate
245Date:		March 2006
246KernelVersion:	2.6.17
247Contact:	netdev@vger.kernel.org
248Description:
249		Indicates the interface RFC2863 operational state as a string.
250
251		Possible values are:
252
253		"unknown", "notpresent", "down", "lowerlayerdown", "testing",
254		"dormant", "up".
255
256What:		/sys/class/net/<iface>/phys_port_id
257Date:		July 2013
258KernelVersion:	3.12
259Contact:	netdev@vger.kernel.org
260Description:
261		Indicates the interface unique physical port identifier within
262		the NIC, as a string.
263
264What:		/sys/class/net/<iface>/phys_port_name
265Date:		March 2015
266KernelVersion:	4.0
267Contact:	netdev@vger.kernel.org
268Description:
269		Indicates the interface physical port name within the NIC,
270		as a string.
271
272What:		/sys/class/net/<iface>/speed
273Date:		October 2009
274KernelVersion:	2.6.33
275Contact:	netdev@vger.kernel.org
276Description:
277		Indicates the interface latest or current speed value. Value is
278		an integer representing the link speed in Mbits/sec.
279
280		Note: this attribute is only valid for interfaces that implement
281		the ethtool get_link_ksettings method (mostly Ethernet).
282
283What:		/sys/class/net/<iface>/tx_queue_len
284Date:		April 2005
285KernelVersion:	2.6.12
286Contact:	netdev@vger.kernel.org
287Description:
288		Indicates the interface transmit queue len in number of packets,
289		as an integer value. Value depend on the type of interface,
290		Ethernet network adapters have a default value of 1000 unless
291		configured otherwise
292
293What:		/sys/class/net/<iface>/type
294Date:		April 2005
295KernelVersion:	2.6.12
296Contact:	netdev@vger.kernel.org
297Description:
298		Indicates the interface protocol type as a decimal value. See
299		include/uapi/linux/if_arp.h for all possible values.
300
301What:		/sys/class/net/<iface>/phys_switch_id
302Date:		November 2014
303KernelVersion:	3.19
304Contact:	netdev@vger.kernel.org
305Description:
306		Indicates the unique physical switch identifier of a switch this
307		port belongs to, as a string.
308
309What:		/sys/class/net/<iface>/phydev
310Date:		May 2017
311KernelVersion:	4.13
312Contact:	netdev@vger.kernel.org
313Description:
314		Symbolic link to the PHY device this network device is attached
315		to.
316
317What:		/sys/class/net/<iface>/carrier_changes
318Date:		Mar 2014
319KernelVersion:	3.15
320Contact:	netdev@vger.kernel.org
321Description:
322		32-bit unsigned integer counting the number of times the link has
323		seen a change from UP to DOWN and vice versa
324
325What:		/sys/class/net/<iface>/carrier_up_count
326Date:		Jan 2018
327KernelVersion:	4.16
328Contact:	netdev@vger.kernel.org
329Description:
330		32-bit unsigned integer counting the number of times the link has
331		been up
332
333What:		/sys/class/net/<iface>/carrier_down_count
334Date:		Jan 2018
335KernelVersion:	4.16
336Contact:	netdev@vger.kernel.org
337Description:
338		32-bit unsigned integer counting the number of times the link has
339		been down
340
341What:		/sys/class/net/<iface>/threaded
342Date:		Jan 2021
343KernelVersion:	5.12
344Contact:	netdev@vger.kernel.org
345Description:
346		Boolean value to control the threaded mode per device. User could
347		set this value to enable/disable threaded mode for all napi
348		belonging to this device, without the need to do device up/down.
349
350		Possible values:
351		== ==================================
352		0  threaded mode disabled for this dev
353		1  threaded mode enabled for this dev
354		== ==================================
355