Devices interfaces

Contains interfaces for most types of devices.

class sdbus_async.networkmanager.NetworkManagerDeviceBluetoothInterfaceAsync

Bluetooth device interface

name

D-Bus property

Python type: str

D-Bus type: s

Name of Bluetooth device

bt_capabilities

D-Bus property

Python type: int

D-Bus type: u

Bluetooth device capabilities

See BluetoothCapabilitiesFlags.

class sdbus_async.networkmanager.NetworkManagerDeviceBondInterfaceAsync

Bond device interface

slaves

D-Bus property

Python type: List[str]

D-Bus type: ao

List of paths of enslaved devices

class sdbus_async.networkmanager.NetworkManagerDeviceBridgeInterfaceAsync

Bridge device interface

slaves

D-Bus property

Python type: List[str]

D-Bus type: ao

List of paths of enslaved devices

class sdbus_async.networkmanager.NetworkManagerDeviceGenericInterfaceAsync

Generic device interface

type_description

D-Bus property

Python type: str

D-Bus type: s

Description of the interface type

class sdbus_async.networkmanager.NetworkManagerDeviceIPTunnelInterfaceAsync

IP tunnel device interface

mode

D-Bus property

Python type: int

D-Bus type: u

Tunnel mode

See IpTunnelMode.

parent

D-Bus property

Python type: str

D-Bus type: o

Object path of parent device

local

D-Bus property

Python type: str

D-Bus type: s

Local endpoint

remote

D-Bus property

Python type: str

D-Bus type: s

Remote endpoint

ttl

D-Bus property

Python type: int

D-Bus type: y

Time to Live (TTL)

0 is special value meaning the packets inherit TTL value.

tos

D-Bus property

Python type: int

D-Bus type: y

Type of service (IPv4) or traffic class (IPv6)

path_mtu_discovery

D-Bus property

Python type: bool

D-Bus type: b

Whether path MTU discovery is enabled on this tunnel

input_key

D-Bus property

Python type: str

D-Bus type: s

Key used for incoming packets

output_key

D-Bus property

Python type: str

D-Bus type: s

Key used for outgoing packets

encapsulation_limit

D-Bus property

Python type: int

D-Bus type: y

How many levels of enapsulation are permitted

Only IPv6 tunnels

flow_label

D-Bus property

Python type: int

D-Bus type: u

Flow label assigned to tunnel packets

Only IPv6 tunnels

flags

D-Bus property

Python type: int

D-Bus type: u

Tunnel flags

Missing upstream documentation

class sdbus_async.networkmanager.NetworkManagerDeviceLowpanInterfaceAsync

6LoWPAN device interface

parent

D-Bus property

Python type: str

D-Bus type: o

Path to parent device

class sdbus_async.networkmanager.NetworkManagerDeviceMacsecInterfaceAsync

MacSec device interface

parent

D-Bus property

Python type: str

D-Bus type: o

Path to parent device

sci

D-Bus property

Python type: int

D-Bus type: t

Secure Channel Identifier

icv_length

D-Bus property

Python type: int

D-Bus type: y

Length of Integrity Check Value

cipher_suite

D-Bus property

Python type: int

D-Bus type: t

Set of cryptographic algorithms in use

Not documented upstream.

window

D-Bus property

Python type: int

D-Bus type: u

Size of replay window. (in number of packets)

encoding_sa

D-Bus property

Python type: int

D-Bus type: y

Security Association in use

validation

D-Bus property

Python type: str

D-Bus type: s

Validation mode for incoming packets

  • strict

  • check

  • disabled

encrypt

D-Bus property

Python type: bool

D-Bus type: b

Whether encryption of transmitted frames is enabled

protect

D-Bus property

Python type: bool

D-Bus type: b

Whether protection of transmitted frames is enabled

include_sci

D-Bus property

Python type: bool

D-Bus type: b

Whether SCI is always included in transmitted SecTAG

end_station_enabled

D-Bus property

Python type: bool

D-Bus type: b

Whether End Station bit is enabled in SecTAG

scb_enabled

D-Bus property

Python type: bool

D-Bus type: b

Whether Single Copy Broadcast is enabled in SecTAG

replay_protect

D-Bus property

Python type: bool

D-Bus type: b

Whether replay protection is enabled

class sdbus_async.networkmanager.NetworkManagerDeviceMacvlanInterfaceAsync

MACVLAN device interface

parent

D-Bus property

Python type: str

D-Bus type: o

Path to parent device

mode

D-Bus property

Python type: str

D-Bus type: s

MacVlan mode

One of: * private * vepa * bridge * passthru

no_promisc

D-Bus property

Python type: bool

D-Bus type: b

Whether this device is blocked from promiscuous mode

tap

D-Bus property

Python type: bool

D-Bus type: b

Whether the device is macvtap

class sdbus_async.networkmanager.NetworkManagerDeviceModemInterfaceAsync

Modem device interface

modem_capabilities

D-Bus property

Python type: int

D-Bus type: u

Modem radio technology

Switching the radio technology might require firmware reboot.

See ModemCapabilitiesFlags.

current_capabilities

D-Bus property

Python type: int

D-Bus type: u

Current supported radio technologies without firmware reload

device_id

D-Bus property

Python type: str

D-Bus type: s

Unique modem identifier

operator_code

D-Bus property

Python type: str

D-Bus type: s

Mobile country codes (MCC) + mobile network codes (MNC)

Blank if disconnected or not a 3GPP modem.

apn

D-Bus property

Python type: str

D-Bus type: s

Access point name modem is connected to.

Blank if disconnected.

class sdbus_async.networkmanager.NetworkManagerDeviceOlpcMeshInterfaceAsync

OLPC Wireless Mesh device interface

companion

D-Bus property

Python type: str

D-Bus type: o

Path to companion device

active_channel

D-Bus property

Python type: int

D-Bus type: u

Currently active channel

class sdbus_async.networkmanager.NetworkManagerDeviceOvsBridgeInterfaceAsync

Open vSwitch device interface

slaves

D-Bus property

Python type: List[str]

D-Bus type: ao

List of paths to slave devices

class sdbus_async.networkmanager.NetworkManagerDeviceOvsPortInterfaceAsync

Open vSwitch port device interface

slaves

D-Bus property

Python type: List[str]

D-Bus type: ao

List of paths to slave devices

class sdbus_async.networkmanager.NetworkManagerDeviceStatisticsInterfaceAsync

Device statistics interface

refresh_rate_ms

D-Bus property

Python type: int

D-Bus type: u

Refreshed rate of properties of this interface in milliseconds.

tx_bytes

D-Bus property

Python type: int

D-Bus type: t

Number of transmitted bytes

rx_bytes

D-Bus property

Python type: int

D-Bus type: t

Number of received bytes

class sdbus_async.networkmanager.NetworkManagerDeviceTeamInterfaceAsync

Teaming device

Aggregates multiple devices to a single one.

Seems to be Network Manager specific type bond device.

slaves

D-Bus property

Python type: List[str]

D-Bus type: ao

List of paths to slave devices

config

D-Bus property

Python type: str

D-Bus type: s

JSON config of the device

class sdbus_async.networkmanager.NetworkManagerDeviceTunInterfaceAsync

Userspace tunneling device interface

owner

D-Bus property

Python type: int

D-Bus type: x

User ID (UID) of the device owner

group

D-Bus property

Python type: int

D-Bus type: x

Group ID (GID) of the device owner

mode

D-Bus property

Python type: str

D-Bus type: s

Tunnel mode

Either tun or tap

no_pi

D-Bus property

Python type: bool

D-Bus type: b

If true no protocol info is prepended to packets

vnet_hdr

D-Bus property

Python type: bool

D-Bus type: b

If true tunnel packets include virtio network header

multi_queue

D-Bus property

Python type: bool

D-Bus type: b

If true callers can connect multiple times

class sdbus_async.networkmanager.NetworkManagerDeviceVethInterfaceAsync

Virtual Ethernet device interface

peer

D-Bus property

Python type: str

D-Bus type: o

Path to peer device

class sdbus_async.networkmanager.NetworkManagerDeviceVlanInterfaceAsync

Virtual LAN device interface

parent

D-Bus property

Python type: str

D-Bus type: o

Path to parent device

vlan_id

D-Bus property

Python type: int

D-Bus type: u

VLAN ID of this interface

class sdbus_async.networkmanager.NetworkManagerDeviceVrfInterfaceAsync

Virtual routing and forwarding device interface

table

D-Bus property

Python type: int

D-Bus type: u

Routing table ID of this device

class sdbus_async.networkmanager.NetworkManagerDeviceVxlanInterfaceAsync

Virtual Extensible LAN device interface

parent

D-Bus property

Python type: str

D-Bus type: o

Path to parent device

vxlan_id

D-Bus property

Python type: int

D-Bus type: u

VXLAN Network Identifier (VNI)

group

D-Bus property

Python type: str

D-Bus type: s

Multicast IP group used to communicate (v4 or v6)

local

D-Bus property

Python type: str

D-Bus type: s

Local IP address used to communicate

tos

D-Bus property

Python type: int

D-Bus type: y

TOS field of IP packets

ttl

D-Bus property

Python type: int

D-Bus type: y

TTL of IP packets

learning

D-Bus property

Python type: bool

D-Bus type: b

If true VXLAN dynamically learns the remote IP address

ageing

D-Bus property

Python type: int

D-Bus type: u

Interval in seconds at which kernel purges stale cached addresses

limit

D-Bus property

Python type: int

D-Bus type: u

Maximum number of entries in forwarding table

dst_port

D-Bus property

Python type: int

D-Bus type: q

Destination port for outgoing packets

src_port_min

D-Bus property

Python type: int

D-Bus type: q

Lowest source port for outgoing packets

src_port_max

D-Bus property

Python type: int

D-Bus type: q

Highest source port for outgoing packets

arp_proxy

D-Bus property

Python type: bool

D-Bus type: b

If true ARP proxying is enabled

route_short_circuit

D-Bus property

Python type: bool

D-Bus type: b

If true route short circuiting is enabled

l2miss

D-Bus property

Python type: bool

D-Bus type: b

If true emit netlink notification on L2 switch misses

l3miss

D-Bus property

Python type: bool

D-Bus type: b

If true emit netlink notification on L3 switch misses

class sdbus_async.networkmanager.NetworkManagerDeviceWifiP2PInterfaceAsync

Wi-Fi Peet to Peer device interface

async start_find(options)

D-Bus Method

Start find operation for Wi-Fi P2P peers

Options supported:

  • timeout of type “i” which is a number of seconds for search timeout between 1-600. Default 300.

Parameters:

options (Dict[str, Tuple[str, Any]]) –

Return type:

None

async stop_find()

D-Bus Method

Stop find operation

Return type:

None

peers

D-Bus property

Python type: List[str]

D-Bus type: ao

List of peer objects paths visible to this Wi-Fi device

peer_added

D-Bus signal

Python type: str

D-Bus type: o

Signal when peer has been added with the new peer object path

peer_removed

D-Bus signal

Python type: str

D-Bus type: o

Signal when peer has been lost with the lost peer object path

class sdbus_async.networkmanager.NetworkManagerDeviceWiredInterfaceAsync

Wired Ethernet device interface

perm_hw_address

D-Bus property

Python type: str

D-Bus type: s

Permanent hardware address

speed

D-Bus property

Python type: int

D-Bus type: u

Design speed of the device in megabits/second

s390_subchannels

D-Bus property

Python type: List[str]

D-Bus type: as

Array of IBM Z Architecture S/390 subchannels

class sdbus_async.networkmanager.NetworkManagerDeviceWireGuardInterfaceAsync

WireGuard device interface

public_key

D-Bus property

Python type: bytes

D-Bus type: ay

Public key of the device

listen_port

D-Bus property

Python type: int

D-Bus type: q

UDP listening port for incoming connections

fw_mark

D-Bus property

Python type: int

D-Bus type: u

Optional packet marker to set routing policy

class sdbus_async.networkmanager.NetworkManagerDeviceWirelessInterfaceAsync

Wi-Fi device interface

async get_all_access_points()

D-Bus Method

Return the list of paths to all access points visible

Includes the hidden ones without SSID.

Return type:

List[str]

async request_scan(options)

D-Bus Method

Request to scan for Wi-Fi access points

Options:

  • ssids of type ‘ayy’ (List[bytes])

Parameters:

options (Dict[str, Tuple[str, Any]]) –

Return type:

None

perm_hw_address

D-Bus property

Python type: str

D-Bus type: s

Permanent hardware address

mode

D-Bus property

Python type: int

D-Bus type: u

Operating mode of the device

See WiFiOperationMode.

bitrate

D-Bus property

Python type: int

D-Bus type: u

Bit rate currently used in kilobits/second

access_points

D-Bus property

Python type: List[str]

D-Bus type: ao

List of paths of access point currently visible

active_access_point

D-Bus property

Python type: str

D-Bus type: o

Path to currently used access point

wireless_capabilities

D-Bus property

Python type: int

D-Bus type: u

List of wireless device capabilities

See WifiCapabilitiesFlags.

last_scan

D-Bus property

Python type: int

D-Bus type: x

Time in CLOCK_BOOTTIME milliseconds since last scan

Value -1 means never scanned.

access_point_added

D-Bus signal

Python type: str

D-Bus type: o

Signal when new point is added with the path

access_point_removed

D-Bus signal

Python type: str

D-Bus type: o

Signal when a point was removed with the path

class sdbus_async.networkmanager.NetworkManagerDeviceInterfaceAsync

Device interface with common functionality

async reapply(connection, version_id, flags=0)

D-Bus Method

Attempt to update the device configuration without deactivating

Parameters:
  • connection (Dict[str, Dict[str, Tuple[str, Any]]]) – Optional connection settings to be reapplied

  • version_id (int) – Current version id of applied connection.

  • flags (int) – currently there are no flags so it should be zero

Return type:

None

async get_applied_connection(flags=0)

D-Bus Method

Get the currently applied connection on the device

Parameters:

flags (int) – Currently there are no flags so this should be zero

Returns:

Tuple of dictionary of connection settings and an int version id.

Return type:

Tuple[Dict[str, Dict[str, Tuple[str, Any]]], int]

async disconnect()

D-Bus Method

Disconnect device and prevent from automatically activating

Return type:

None

async delete()

D-Bus Method

Deletes the software device.

Raises an exception if the device is a hardware device.

Return type:

None

udi

D-Bus property

Python type: str

D-Bus type: s

Not stable device identifier

Should not be used for tracking connection.

path

D-Bus property

Python type: str

D-Bus type: s

Device path as exposed by Udev

interface

D-Bus property

Python type: str

D-Bus type: s

Name of device control interface (???)

ip_interface

D-Bus property

Python type: str

D-Bus type: s

Name of device data interface (???)

driver

D-Bus property

Python type: str

D-Bus type: s

Driver handling device

driver_version

D-Bus property

Python type: str

D-Bus type: s

Driver version

firmware_version

D-Bus property

Python type: str

D-Bus type: s

Firmware version of the device

capabilities

D-Bus property

Python type: int

D-Bus type: u

Capabilities of the device

See DeviceCapabilitiesFlags.

state

D-Bus property

Python type: int

D-Bus type: u

Device state.

See DeviceState.

state_reason

D-Bus property

Python type: Tuple[int, int]

D-Bus type: (uu)

Current state and the reason.

See DeviceState and DeviceStateReason.

active_connection

D-Bus property

Python type: str

D-Bus type: o

Path of active connection object

ip4_config

D-Bus property

Python type: str

D-Bus type: o

Path of Ip4Config object

Only valid when device is in ACTIVATED state.

dhcp4_config

D-Bus property

Python type: str

D-Bus type: o

Path of Dhcp4 object

Only valid when device is in ACTIVATED state.

ip6_config

D-Bus property

Python type: str

D-Bus type: o

Path to Ip6Config object

Only valid when device is in ACTIVATED state.

dhcp6_config

D-Bus property

Python type: str

D-Bus type: o

Path to Dhcp6 object

Only valid when device is in ACTIVATED state.

managed

D-Bus property

Python type: bool

D-Bus type: b

Whether or not this device is manager by NetworkManager

This setting can be written. The value is not persistent on NetworkManager restarts.

autoconnect

D-Bus property

Python type: bool

D-Bus type: b

If true device is allowed to auto connect

Can be written.

firmware_missing

D-Bus property

Python type: bool

D-Bus type: b

If true means the device is missing firmware

nm_plugin_missing

D-Bus property

Python type: bool

D-Bus type: b

If true means the plugin for NetworkManager is missing

device_type

D-Bus property

Python type: int

D-Bus type: u

Device type

See DeviceType.

available_connections

D-Bus property

Python type: List[str]

D-Bus type: ao

List of object paths to connections available

physical_port_id

D-Bus property

Python type: str

D-Bus type: s

Physical network port of the device

mtu

D-Bus property

Python type: int

D-Bus type: u

Maximum Transmission Unit

metered

D-Bus property

Python type: int

D-Bus type: u

Whether the traffic is subject to limitations

See DeviceMetered.

lldp_neighbors

D-Bus property

Python type: List[Dict[str, Tuple[str, Any]]]

D-Bus type: aa{sv}

List of LLDP neighbors

Each element is the dictionary of LLDP TLV names to variants values.

real

D-Bus property

Python type: bool

D-Bus type: b

Whether this device is exists

If it does not yet exist it can be automatically created if one of the available connections becomes activated.

ip4_connectivity

D-Bus property

Python type: int

D-Bus type: u

IPv4 connectivity state

See ConnectivityState.

ip6_connectivity

D-Bus property

Python type: int

D-Bus type: u

IPv6 connectivity state

See ConnectivityState.

interface_flags

D-Bus property

Python type: int

D-Bus type: u

Interface flags

See DeviceInterfaceFlags.

hw_address

D-Bus property

Python type: str

D-Bus type: s

Hardware address

state_changed

D-Bus signal

Python type: Tuple[int, int, int]

D-Bus type: uuu

Signal when device state has changed

Tuple of new state, old state and reason for new state.

See DeviceState and DeviceStateReason.

async get_applied_connection_profile()

Get the currently applied connection on the device.

Note

This method cannot fetch secrets. Use NetworkManagerSettingsConnectionInterfaceAsync.get_profile() to acquire profile with secrets.

Returns:

Tuple of profile and version id.

Return type:

Tuple[ConnectionProfile, int]

async reapply_profile(profile, version_id=0)

Attempts to update the configuration of a device without deactivating it.

Parameters:
  • profile (ConnectionProfile) – Connection profile to update with.

  • version_id (int) – If non-zero, the current version id of the applied-connection must match. The current version id can be retrieved via get_applied_connection_profile().

Return type:

None

class sdbus_async.networkmanager.NetworkManagerPPPInterfaceAsync

Helper interface for PPP plugin

async need_secrets()

D-Bus Method

Need secrets?

Returns the tuple of username and password

Return type:

Tuple[str, str]

async set_ip4_config(config)

D-Bus Method

Set IPv4 configuration

Parameters:

config (Dict[str, Tuple[str, Any]]) –

Return type:

None

async set_ip6_config(config)

D-Bus Method

Set IPv6 configuration

Parameters:

config (Dict[str, Tuple[str, Any]]) –

Return type:

None

async set_state(state)

D-Bus Method

Set connection state.

Not documented upstream.

Parameters:

state (int) –

Return type:

None

async set_ifindex(ifindex)

D-Bus Method

Set input device index

Not documented upstream.

Parameters:

ifindex (int) –

Return type:

None

class sdbus_async.networkmanager.NetworkManagerLoopbackInterfaceAsync