Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 1 | What: /sys/class/net/<iface>/name_assign_type |
| 2 | Date: July 2014 |
| 3 | KernelVersion: 3.17 |
| 4 | Contact: netdev@vger.kernel.org |
| 5 | Description: |
| 6 | Indicates the name assignment type. Possible values are: |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 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 | == ========================================================== |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 14 | |
| 15 | What: /sys/class/net/<iface>/addr_assign_type |
| 16 | Date: July 2010 |
| 17 | KernelVersion: 3.2 |
| 18 | Contact: netdev@vger.kernel.org |
| 19 | Description: |
| 20 | Indicates the address assignment type. Possible values are: |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 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 | == ============================= |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 28 | |
| 29 | What: /sys/class/net/<iface>/addr_len |
| 30 | Date: April 2005 |
| 31 | KernelVersion: 2.6.12 |
| 32 | Contact: netdev@vger.kernel.org |
| 33 | Description: |
| 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 | |
| 39 | What: /sys/class/net/<iface>/address |
| 40 | Date: April 2005 |
| 41 | KernelVersion: 2.6.12 |
| 42 | Contact: netdev@vger.kernel.org |
| 43 | Description: |
| 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 | |
| 48 | What: /sys/class/net/<bridge iface>/bridge/group_fwd_mask |
| 49 | Date: January 2012 |
| 50 | KernelVersion: 3.2 |
| 51 | Contact: netdev@vger.kernel.org |
| 52 | Description: |
| 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: |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 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 | == ======================================================== |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 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 | |
| 70 | What: /sys/class/net/<iface>/broadcast |
| 71 | Date: April 2005 |
| 72 | KernelVersion: 2.6.12 |
| 73 | Contact: netdev@vger.kernel.org |
| 74 | Description: |
| 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 | |
| 79 | What: /sys/class/net/<iface>/carrier |
| 80 | Date: April 2005 |
| 81 | KernelVersion: 2.6.12 |
| 82 | Contact: netdev@vger.kernel.org |
| 83 | Description: |
| 84 | Indicates the current physical link state of the interface. |
| 85 | Posssible values are: |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 86 | |
| 87 | == ===================== |
| 88 | 0 physical link is down |
| 89 | 1 physical link is up |
| 90 | == ===================== |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 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 | |
| 96 | What: /sys/class/net/<iface>/dev_id |
| 97 | Date: April 2008 |
| 98 | KernelVersion: 2.6.26 |
| 99 | Contact: netdev@vger.kernel.org |
| 100 | Description: |
| 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 | |
David Brazdil | 0f672f6 | 2019-12-10 10:32:29 +0000 | [diff] [blame] | 106 | What: /sys/class/net/<iface>/dev_port |
| 107 | Date: February 2014 |
| 108 | KernelVersion: 3.15 |
| 109 | Contact: netdev@vger.kernel.org |
| 110 | Description: |
| 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 | |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 124 | What: /sys/class/net/<iface>/dormant |
| 125 | Date: March 2006 |
| 126 | KernelVersion: 2.6.17 |
| 127 | Contact: netdev@vger.kernel.org |
| 128 | Description: |
| 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 | |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 139 | What: /sys/class/net/<iface>/testing |
| 140 | Date: April 2002 |
| 141 | KernelVersion: 5.8 |
| 142 | Contact: netdev@vger.kernel.org |
| 143 | Description: |
| 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 | |
| 155 | What: /sys/class/net/<iface>/duplex |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 156 | Date: October 2009 |
| 157 | KernelVersion: 2.6.33 |
| 158 | Contact: netdev@vger.kernel.org |
| 159 | Description: |
| 160 | Indicates the interface latest or current duplex value. Possible |
| 161 | values are: |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 162 | |
| 163 | ==== =========== |
| 164 | half half duplex |
| 165 | full full duplex |
| 166 | ==== =========== |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 167 | |
| 168 | Note: This attribute is only valid for interfaces that implement |
David Brazdil | 0f672f6 | 2019-12-10 10:32:29 +0000 | [diff] [blame] | 169 | the ethtool get_link_ksettings method (mostly Ethernet). |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 170 | |
| 171 | What: /sys/class/net/<iface>/flags |
| 172 | Date: April 2005 |
| 173 | KernelVersion: 2.6.12 |
| 174 | Contact: netdev@vger.kernel.org |
| 175 | Description: |
| 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 | |
| 180 | What: /sys/class/net/<iface>/ifalias |
| 181 | Date: September 2008 |
| 182 | KernelVersion: 2.6.28 |
| 183 | Contact: netdev@vger.kernel.org |
| 184 | Description: |
| 185 | Indicates/stores an interface alias name as a string. This can |
| 186 | be used for system management purposes. |
| 187 | |
| 188 | What: /sys/class/net/<iface>/ifindex |
| 189 | Date: April 2005 |
| 190 | KernelVersion: 2.6.12 |
| 191 | Contact: netdev@vger.kernel.org |
| 192 | Description: |
| 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 | |
| 199 | What: /sys/class/net/<iface>/iflink |
| 200 | Date: April 2005 |
| 201 | KernelVersion: 2.6.12 |
| 202 | Contact: netdev@vger.kernel.org |
| 203 | Description: |
| 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 | |
| 209 | What: /sys/class/net/<iface>/link_mode |
| 210 | Date: March 2006 |
| 211 | KernelVersion: 2.6.17 |
| 212 | Contact: netdev@vger.kernel.org |
| 213 | Description: |
| 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: |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 217 | |
| 218 | == ================= |
| 219 | 0 default link mode |
| 220 | 1 dormant link mode |
| 221 | == ================= |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 222 | |
| 223 | What: /sys/class/net/<iface>/mtu |
| 224 | Date: April 2005 |
| 225 | KernelVersion: 2.6.12 |
| 226 | Contact: netdev@vger.kernel.org |
| 227 | Description: |
| 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 | |
| 233 | What: /sys/class/net/<iface>/netdev_group |
| 234 | Date: January 2011 |
| 235 | KernelVersion: 2.6.39 |
| 236 | Contact: netdev@vger.kernel.org |
| 237 | Description: |
| 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 | |
| 244 | What: /sys/class/net/<iface>/operstate |
| 245 | Date: March 2006 |
| 246 | KernelVersion: 2.6.17 |
| 247 | Contact: netdev@vger.kernel.org |
| 248 | Description: |
| 249 | Indicates the interface RFC2863 operational state as a string. |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 250 | |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 251 | Possible values are: |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 252 | |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 253 | "unknown", "notpresent", "down", "lowerlayerdown", "testing", |
| 254 | "dormant", "up". |
| 255 | |
| 256 | What: /sys/class/net/<iface>/phys_port_id |
| 257 | Date: July 2013 |
| 258 | KernelVersion: 3.12 |
| 259 | Contact: netdev@vger.kernel.org |
| 260 | Description: |
| 261 | Indicates the interface unique physical port identifier within |
| 262 | the NIC, as a string. |
| 263 | |
| 264 | What: /sys/class/net/<iface>/phys_port_name |
| 265 | Date: March 2015 |
| 266 | KernelVersion: 4.0 |
| 267 | Contact: netdev@vger.kernel.org |
| 268 | Description: |
| 269 | Indicates the interface physical port name within the NIC, |
| 270 | as a string. |
| 271 | |
| 272 | What: /sys/class/net/<iface>/speed |
| 273 | Date: October 2009 |
| 274 | KernelVersion: 2.6.33 |
| 275 | Contact: netdev@vger.kernel.org |
| 276 | Description: |
| 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 |
David Brazdil | 0f672f6 | 2019-12-10 10:32:29 +0000 | [diff] [blame] | 281 | the ethtool get_link_ksettings method (mostly Ethernet). |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 282 | |
| 283 | What: /sys/class/net/<iface>/tx_queue_len |
| 284 | Date: April 2005 |
| 285 | KernelVersion: 2.6.12 |
| 286 | Contact: netdev@vger.kernel.org |
| 287 | Description: |
| 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 | |
| 293 | What: /sys/class/net/<iface>/type |
| 294 | Date: April 2005 |
| 295 | KernelVersion: 2.6.12 |
| 296 | Contact: netdev@vger.kernel.org |
| 297 | Description: |
| 298 | Indicates the interface protocol type as a decimal value. See |
| 299 | include/uapi/linux/if_arp.h for all possible values. |
| 300 | |
| 301 | What: /sys/class/net/<iface>/phys_switch_id |
| 302 | Date: November 2014 |
| 303 | KernelVersion: 3.19 |
| 304 | Contact: netdev@vger.kernel.org |
| 305 | Description: |
| 306 | Indicates the unique physical switch identifier of a switch this |
| 307 | port belongs to, as a string. |
| 308 | |
| 309 | What: /sys/class/net/<iface>/phydev |
| 310 | Date: May 2017 |
| 311 | KernelVersion: 4.13 |
| 312 | Contact: netdev@vger.kernel.org |
| 313 | Description: |
| 314 | Symbolic link to the PHY device this network device is attached |
| 315 | to. |
| 316 | |
| 317 | What: /sys/class/net/<iface>/carrier_changes |
| 318 | Date: Mar 2014 |
| 319 | KernelVersion: 3.15 |
| 320 | Contact: netdev@vger.kernel.org |
| 321 | Description: |
| 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 | |
| 325 | What: /sys/class/net/<iface>/carrier_up_count |
| 326 | Date: Jan 2018 |
| 327 | KernelVersion: 4.16 |
| 328 | Contact: netdev@vger.kernel.org |
| 329 | Description: |
| 330 | 32-bit unsigned integer counting the number of times the link has |
| 331 | been up |
| 332 | |
| 333 | What: /sys/class/net/<iface>/carrier_down_count |
| 334 | Date: Jan 2018 |
| 335 | KernelVersion: 4.16 |
| 336 | Contact: netdev@vger.kernel.org |
| 337 | Description: |
| 338 | 32-bit unsigned integer counting the number of times the link has |
| 339 | been down |