org.freedesktop.network1 — The D-Bus interface of systemd-networkd
systemd-networkd.service(8) is a system service that manages and configures network interfaces. This page describes the D-Bus interface.
The service exposes the following interfaces on the Manager object on the bus:
node /org/freedesktop/network1 {
interface org.freedesktop.network1.Manager {
methods:
ListLinks(out a(iso) links);
GetLinkByName(in s name,
out i ifindex,
out o path);
GetLinkByIndex(in i ifindex,
out s name,
out o path);
SetLinkNTP(in i ifindex,
in as servers);
SetLinkDNS(in i ifindex,
in a(iay) addresses);
SetLinkDNSEx(in i ifindex,
in a(iayqs) addresses);
SetLinkDomains(in i ifindex,
in a(sb) domains);
SetLinkDefaultRoute(in i ifindex,
in b enable);
SetLinkLLMNR(in i ifindex,
in s mode);
SetLinkMulticastDNS(in i ifindex,
in s mode);
SetLinkDNSOverTLS(in i ifindex,
in s mode);
SetLinkDNSSEC(in i ifindex,
in s mode);
SetLinkDNSSECNegativeTrustAnchors(in i ifindex,
in as names);
RevertLinkNTP(in i ifindex);
RevertLinkDNS(in i ifindex);
RenewLink(in i ifindex);
ForceRenewLink(in i ifindex);
ReconfigureLink(in i ifindex);
Reload();
DescribeLink(in i ifindex,
out s json);
Describe(out s json);
properties:
readonly s OperationalState = '...';
readonly s CarrierState = '...';
readonly s AddressState = '...';
readonly s IPv4AddressState = '...';
readonly s IPv6AddressState = '...';
readonly s OnlineState = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly t NamespaceId = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
readonly u NamespaceNSID = ...;
};
interface org.freedesktop.DBus.Peer { ... };
interface org.freedesktop.DBus.Introspectable { ... };
interface org.freedesktop.DBus.Properties { ... };
};
Provides information about the manager.
NamespaceId contains the inode number of the network namespace that the
network service runs in. A client may compare this with the inode number of its own network namespace
to verify whether the service manages the same network namespace.
NamespaceNSID contains the "nsid" identifier the kernel maintains for the
network namespace, if there's one assigned.
node /org/freedesktop/network1/link/_1 {
interface org.freedesktop.network1.Link {
methods:
SetNTP(in as servers);
SetDNS(in a(iay) addresses);
SetDNSEx(in a(iayqs) addresses);
SetDomains(in a(sb) domains);
SetDefaultRoute(in b enable);
SetLLMNR(in s mode);
SetMulticastDNS(in s mode);
SetDNSOverTLS(in s mode);
SetDNSSEC(in s mode);
SetDNSSECNegativeTrustAnchors(in as names);
RevertNTP();
RevertDNS();
Renew();
ForceRenew();
Reconfigure();
Describe(out s json);
properties:
readonly s OperationalState = '...';
readonly s CarrierState = '...';
readonly s AddressState = '...';
readonly s IPv4AddressState = '...';
readonly s IPv6AddressState = '...';
readonly s OnlineState = '...';
readonly s AdministrativeState = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
readonly (tt) BitRates = ...;
};
interface org.freedesktop.DBus.Peer { ... };
interface org.freedesktop.DBus.Introspectable { ... };
interface org.freedesktop.DBus.Properties { ... };
};
Provides information about interfaces.
node /org/freedesktop/network1/network/_1 {
interface org.freedesktop.network1.Network {
properties:
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s Description = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s SourcePath = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly as MatchMAC = ['...', ...];
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly as MatchPath = ['...', ...];
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly as MatchDriver = ['...', ...];
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly as MatchType = ['...', ...];
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly as MatchName = ['...', ...];
};
interface org.freedesktop.DBus.Peer { ... };
interface org.freedesktop.DBus.Introspectable { ... };
interface org.freedesktop.DBus.Properties { ... };
};
Provides information about .network files.
node /org/freedesktop/network1/link/_1 {
interface org.freedesktop.network1.DHCPServer {
properties:
readonly a(uayayayayt) Leases = [...];
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly u PoolSize = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly u PoolOffset = ...;
};
interface org.freedesktop.DBus.Peer { ... };
interface org.freedesktop.DBus.Introspectable { ... };
interface org.freedesktop.DBus.Properties { ... };
interface org.freedesktop.network1.Link { ... };
};
Provides information about the DHCP server. The Leases property contains
the currently active leases. The PoolSize property contains the total number
of addresses in the dynamic address pool. The PoolOffset property contains
the offset from the subnet base address where the pool starts. These correspond to the
PoolSize= and PoolOffset= settings in
systemd.network(5).
UINT32_MAX is used as a sentinel value for PoolSize
and PoolOffset to indicate that the information is unavailable (i.e. no
DHCP server is configured or the link is in relay mode), rather than a valid pool size or
offset.
node /org/freedesktop/network1/link/_1 {
interface org.freedesktop.network1.DHCPv4Client {
properties:
readonly s State = '...';
};
interface org.freedesktop.DBus.Peer { ... };
interface org.freedesktop.DBus.Introspectable { ... };
interface org.freedesktop.DBus.Properties { ... };
interface org.freedesktop.network1.Link { ... };
};
Provides information about DHCPv4 client status.
node /org/freedesktop/network1/link/_1 {
interface org.freedesktop.network1.DHCPv6Client {
properties:
readonly s State = '...';
};
interface org.freedesktop.DBus.Peer { ... };
interface org.freedesktop.DBus.Introspectable { ... };
interface org.freedesktop.DBus.Properties { ... };
interface org.freedesktop.network1.Link { ... };
};
Provides information about DHCPv6 client status.
Example 1. Introspect org.freedesktop.network1.Manager on the bus
$ gdbus introspect --system \ --dest org.freedesktop.network1 \ --object-path /org/freedesktop/network1
Example 2. Introspect org.freedesktop.network1.Link on the bus
$ gdbus introspect --system \ --dest org.freedesktop.network1 \ --object-path /org/freedesktop/network1/link/_11