# NetworkManager Reference Manual

for NetworkManager &version; The latest version of this documentation can be found on-line at https://networkmanager.dev/docs/api/latest/.
2012 2013 2014 2015 2016 2017 2018 The NetworkManager Authors

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You may obtain a copy of the GNU Free Documentation License from the Free Software Foundation by visiting their Web site or by writing to:

    	  The Free Software Foundation, Inc.,
    	  51 Franklin Street - Fifth Floor,
    	  Boston, MA 02110-1301,
    	  USA

This manual is the reference documentation for NetworkManager, the standard Linux network management service. It is intended for system administrators and integrators who need to understand the capabilities of NetworkManager, its configuration options, command line tools and the D-Bus API for programmatic control of the service.

The end users NetworkManager should instead refer to respective documentation of their desktop environment of choice.

The application developers who prefer not to use the D-Bus API directly can use the libnm library shipped with NetworkManager or its bindings to a higher level language such as Python, Ruby or Vala via GObject introspection.

## Manual Pages

## Network Configuration Setting Specification

This part documents the properties and value types of each "Setting" object that composes the basic unit of NetworkManager configuration, the "Connection". Each Connection object is simply a dictionary mapping setting names (like "802-3-ethernet" or "bluetooth") to a dictionary of key/value pairs that represents each itself.

### Configuration Settings

(NetworkManager was built without full introspection support. Setting documentation is not available.)

### Secret flag types

Each secret property in a setting has an associated "flags" property that describes how to handle that secret. The "flags" property is a bitfield that contains zero or more of the following values logically OR-ed together.

- `0x0 (none)` - the system is responsible for providing and storing this secret.
- `0x1 (agent-owned)` - a user-session secret agent is responsible for providing and storing this secret; when it is required, agents will be asked to provide it.
- `0x2 (not-saved)` - this secret should not be saved but should be requested from the user each time it is required. This flag should be used for One-Time-Pad secrets, PIN codes from hardware tokens, or if the user simply does not want to save the secret.
- `0x4 (not-required)` - in some situations it cannot be automatically determined that a secret is required or not. This flag hints that the secret is not required and should not be requested from the user.

## D-Bus API Reference

This part documents the D-Bus interface used to access the NetworkManager daemon.

### The `/org/freedesktop/NetworkManager` object

### The `/org/freedesktop/NetworkManager/AgentManager` object

### The `/org/freedesktop/NetworkManager/DnsManager` object

### The `/org/freedesktop/NetworkManager/Settings` object

### The `/org/freedesktop/NetworkManager/Settings/*` objects

### The `/org/freedesktop/NetworkManager/Devices/*` objects

### The `/org/freedesktop/NetworkManager/ActiveConnection/*` objects

### The `/org/freedesktop/NetworkManager/IP4Config/*` objects

### The `/org/freedesktop/NetworkManager/IP6Config/*` objects

### The `/org/freedesktop/NetworkManager/DHCP4Config/*` objects

### The `/org/freedesktop/NetworkManager/AccessPoint/*` objects

### The `/org.freedesktop.NetworkManager.WifiP2PPeer/*` objects

### The `/org/freedesktop/NetworkManager/Checkpoint/*` objects

### Types

## Secret Agent D-Bus API Reference

### Secret agents

## VPN Plugin D-Bus API Reference

### VPN services

### Types

Index

## License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the

            Free Software Foundation, Inc.,
            51 Franklin Street - Fifth Floor,
            Boston, MA 02110-1301,
            USA

A copy of the GNU General Public License can also be obtained from the GNU web site.