Many interfaces are available related to networking. Most snaps need only specify
network to connect to the network and
network-bind to allow running a network service (eg, web server).
In addition to
network-bind, there are a number of other interfaces related to network management, status and connectivity:
This interface allows use of low-level networking tools (eg,
route, …), configuration files (eg,
/etc/resolvconf/*, …), kernel tunables related to networking (eg,
/proc/sys/net/...), network devices (eg,
/dev/tun*, …) and management of network namespaces via ip netns.
For consumer snaps (plugs), this interface allows access to the NetworkManager DBus API which can be used to query network status or configure networking on the system.
The interface also allows a slot implementation to provide the NetworkManager DBus APIs and have consumer snaps connect to it.
This interface provides read-only access for low-level configuration, kernel tunables and statistics.
This interface provides read/write access to netplan and ifupdown configuration. netplan and/or ifupdown is used to configure various aspects of networking for the system during boot and network restart.
This interface provides read access to netplan and ifupdown configuration.
This interface provides access to the
connectivity DBus service which can be used to query the global network status (“is the system on the network at all?”) or if the system is on a metered connection.