LuCI.network. Device

A Network.Device class instance represents an underlying Linux network device and allows querying device details such as packet statistics or MTU.

Methods

getBridgeID() → {null|string}

Get the bridge ID

Returns:

Returns the ID of this network bridge or null if this network device is not a Linux bridge.

Type: 
null | string

getBridgeSTP() → {boolean}

Get the bridge STP setting

Returns:

Returns true when this device is a Linux bridge and has stp enabled, else false.

Type: 
boolean

getCarrier() → {boolean}

Get the carrier state of the network device.

Returns:

Returns true if the device has a carrier, e.g. when a cable is inserted into an Ethernet port of false if there is none.

Type: 
boolean

getDuplex() → {string|null}

Get the current duplex mode of the network device if available.

Returns:

Returns the current duplex mode of the network device. Returns either "full" or "half" if the device supports duplex modes or null if the duplex mode is unknown or unsupported.

Type: 
string | null

getI18n() → {string}

Get a long description string for the device.

Returns:

Returns a string containing the type description and device name for non-WiFi devices or operation mode and SSID for WiFi ones.

Type: 
string

getIP6Addrs() → {Array.<string>}

Get the IPv6 addresses configured on the device.

Returns:

Returns an array of IPv6 address strings.

Type: 
Array.<string>

getIPAddrs() → {Array.<string>}

Get the IPv4 addresses configured on the device.

Returns:

Returns an array of IPv4 address strings.

Type: 
Array.<string>

getMAC() → {null|string}

Get the MAC address of the device.

Returns:

Returns the MAC address of the device or null if not applicable, e.g. for non-Ethernet tunnel devices.

Type: 
null | string

getMTU() → {number}

Get the MTU of the device.

Returns:

Returns the MTU of the device.

Type: 
number

getName() → {string}

Get the name of the network device.

Returns:

Returns the name of the device, e.g. eth0 or wlan0.

Type: 
string

getNetwork() → {null|LuCI.network.Protocol}

Get the primary logical interface this device is assigned to.

Returns:

Returns a Network.Protocol instance representing the logical interface this device is attached to or null if it is not assigned to any logical interface.

Type: 
null | LuCI.network.Protocol

getNetworks() → {Array.<LuCI.network.Protocol>}

Get the logical interfaces this device is assigned to.

Returns:

Returns an array of Network.Protocol instances representing the logical interfaces this device is assigned to.

Type: 
Array.<LuCI.network.Protocol>

getPSE() → {Object|null}

Get the PSE (Power Sourcing Equipment / PoE) status of the device.

Returns:

Returns an object containing PSE status information or null if PSE is not available on this device. The object may contain:

  • c33AdminState: "enabled" or "disabled" (C33 PoE admin state)
  • c33PowerStatus: "disabled", "searching", "delivering", "test", "fault", "otherfault"
  • c33PowerClass: Power class number (1-8)
  • c33ActualPower: Actual power consumption in mW
  • c33AvailablePowerLimit: Available power limit in mW
  • podlAdminState: "enabled" or "disabled" (PoDL admin state)
  • podlPowerStatus: "disabled", "searching", "delivering", "sleep", "idle", "error"
  • priority: Current priority level
  • priorityMax: Maximum priority level
Type: 
Object | null

getParent() → {null|LuCI.network.Device}

Get the logical parent device of this device.

In case of DSA switch ports, the parent device will be the DSA switch device itself, for VLAN devices, the parent refers to the base device etc.

Returns:

Returns a Network.Device instance representing the parent device or null when this device has no parent, as it is the case for e.g. ordinary Ethernet interfaces.

Type: 
null | LuCI.network.Device

getPorts() → {null|Array.<LuCI.network.Device>}

Get the associated bridge ports of the device.

Returns:

Returns an array of Network.Device instances representing the ports (slave interfaces) of the bridge or null when this device isn't a Linux bridge.

Type: 
null | Array.<LuCI.network.Device>

getRXBytes() → {number}

Get the amount of received bytes.

Returns:

Returns the amount of bytes received by the network device.

Type: 
number

getRXPackets() → {number}

Get the amount of received packets.

Returns:

Returns the amount of packets received by the network device.

Type: 
number

getShortName() → {string}

Get a short description string for the device.

Returns:

Returns the device name for non-WiFi devices or a string containing the operation mode and SSID for WiFi devices.

Type: 
string

getSpeed() → {number|null}

Get the current link speed of the network device if available.

Returns:

Returns the current speed of the network device in Mbps. If the device supports no Ethernet speed levels, null is returned. If the device supports Ethernet speeds but has no carrier, -1 is returned.

Type: 
number | null

getTXBytes() → {number}

Get the amount of transmitted bytes.

Returns:

Returns the amount of bytes transmitted by the network device.

Type: 
number

getTXPackets() → {number}

Get the amount of transmitted packets.

Returns:

Returns the amount of packets transmitted by the network device.

Type: 
number

getType() → {string}

Get the type of the device.

Returns:

Returns a string describing the type of the network device:

  • alias if it is an abstract alias device (@ notation)
  • wifi if it is a wireless interface (e.g. wlan0)
  • bridge if it is a bridge device (e.g. br-lan)
  • tunnel if it is a tun or tap device (e.g. tun0)
  • vlan if it is a vlan device (e.g. eth0.1)
  • vrf if it is a Virtual Routing and Forwarding type (e.g. vrf0)
  • switch if it is a switch device (e.g.eth1 connected to switch0)
  • ethernet for all other device types
Type: 
string

getTypeI18n() → {string}

Get a string describing the device type.

Returns:

Returns a string describing the type, e.g. "Wireless Adapter" or "Bridge".

Type: 
string

getWifiNetwork() → {null|LuCI.network.WifiNetwork}

Get the related wireless network this device is related to.

Returns:

Returns a Network.WifiNetwork instance representing the wireless network corresponding to this network device or null if this device is not a wireless device.

Type: 
null | LuCI.network.WifiNetwork

hasPSE() → {boolean}

Check if PSE (PoE) is available on this device.

Returns:

Returns true if PSE hardware is available on this device.

Type: 
boolean

isBridge() → {boolean}

Checks whether this device is a Linux bridge.

Returns:

Returns true when the network device is present and a Linux bridge, else false.

Type: 
boolean

isBridgePort() → {boolean}

Checks whether this device is part of a Linux bridge.

Returns:

Returns true when this network device is part of a bridge, else false.

Type: 
boolean

isUp() → {boolean}

Checks whether this device is up.

Returns:

Returns true when the associated device is running or false when it is down or absent.

Type: 
boolean