ORG.FREEDESKTOP.NETWORK1(5) org.freedesktop.network1 ORG.FREEDESKTOP.NETWORK1(5)

.SH "NAME" org.freedesktop.network1 - The D-Bus interface of systemd-networkd

.SH "INTRODUCTION"

.PP [**systemd-networkd.service**(8)](/man/os/systemd/systemd-networkd.service.8) is a system service that manages and configures network interfaces. This page describes the D-Bus interface.

.SH "THE MANAGER OBJECT"

.PP 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 { ... };
};
```

.PP Provides information about the manager.

.SS "Properties"

.PP *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.

.PP *NamespaceNSID* contains the "nsid" identifier the kernel maintains for the network namespace, if there's one assigned.

.SH "LINK OBJECT"

```
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 { ... };
};
```

.PP Provides information about interfaces.

.SH "NETWORK OBJECT"

```
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 { ... };
};
```

.PP Provides information about .network files.

.SH "DHCP SERVER OBJECT"

```
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 { ... };
};
```

.PP 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)](/man/os/systemd/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.

.SH "DHCPV4 CLIENT OBJECT"

```
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 { ... };
};
```

.PP Provides information about DHCPv4 client status.

.SH "DHCPV6 CLIENT OBJECT"

```
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 { ... };
};
```

.PP Provides information about DHCPv6 client status.

.SH "EXAMPLES"

.PP **Example 1. Introspect org.freedesktop.network1.Manager on the bus**

```
$ gdbus introspect --system \


  --dest org.freedesktop.network1 \


  --object-path /org/freedesktop/network1
```

.PP **Example 2. Introspect org.freedesktop.network1.Link on the bus**

```
$ gdbus introspect --system \


  --dest org.freedesktop.network1 \


  --object-path /org/freedesktop/network1/link/_11
```

.SH "VERSIONING"

.PP These D-Bus interfaces follow **the usual interface versioning guidelines**\[1].

.SH "HISTORY"

.SS "DHCP Server Object"

.PP *PoolSize* and *PoolOffset* were added in version 261.

.SS "DHCPv4 Client Object"

.PP *State* was added in version 255.

.SS "DHCPv6 Client Object"

.PP *State* was added in version 255.

.SS "Manager Object"

.PP *NamespaceNSID* was added in version 256.

.SH "SEE ALSO"

.PP [**systemd**(1)](/man/os/systemd/systemd.1), [**systemd-networkd.service**(8)](/man/os/systemd/systemd-networkd.service.8), [**networkctl**(1)](/man/os/systemd/networkctl.1)

# [NOTES](#NOTES)

1\.

the usual interface versioning guidelines

https://0pointer.de/blog/projects/versioning-dbus.html

systemd 262.2

---

Document: org.freedesktop.network1(5) from systemd 262.2-r1 (Chainguard OS)
Source: https://github.com/systemd/systemd
