summaryrefslogtreecommitdiff
path: root/man/nmcli.xml
diff options
context:
space:
mode:
Diffstat (limited to 'man/nmcli.xml')
-rw-r--r--man/nmcli.xml3113
1 files changed, 3113 insertions, 0 deletions
diff --git a/man/nmcli.xml b/man/nmcli.xml
new file mode 100644
index 0000000000..21faf1af46
--- /dev/null
+++ b/man/nmcli.xml
@@ -0,0 +1,3113 @@
+<?xml version='1.0'?>
+<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+ nmcli(1) manual page
+
+ This is free documentation; 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.
+
+ The GNU General Public License's references to "object code"
+ and "executables" are to be interpreted as the output of any
+ document formatting or typesetting system, including
+ intermediate and printed output.
+
+ This manual 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 Licence along
+ with this manual; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+ Copyright 2010 - 2016 Red Hat, Inc.
+-->
+
+<refentry id='nmcli'>
+
+ <refentryinfo>
+ <title>nmcli</title>
+ <author>NetworkManager developers</author>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>nmcli</refentrytitle>
+ <manvolnum>1</manvolnum>
+ <refmiscinfo class="source">NetworkManager</refmiscinfo>
+ <refmiscinfo class="manual">General Commands Manual</refmiscinfo>
+ <refmiscinfo class="version">1.2</refmiscinfo>
+ </refmeta>
+
+ <refnamediv>
+ <refname>nmcli</refname>
+ <refpurpose>command-line tool for controlling NetworkManager</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv id='synopsis'>
+ <cmdsynopsis>
+ <command>nmcli</command>
+ <arg choice="opt" rep="repeat"><replaceable>OPTIONS</replaceable></arg>
+ <group choice='req'>
+ <arg choice='plain'><option>help</option></arg>
+ <arg choice='plain'><option>general</option></arg>
+ <arg choice='plain'><option>networking</option></arg>
+ <arg choice='plain'><option>radio</option></arg>
+ <arg choice='plain'><option>connection</option></arg>
+ <arg choice='plain'><option>device</option></arg>
+ <arg choice='plain'><option>agent</option></arg>
+ <arg choice='plain'><option>monitor</option></arg>
+ </group>
+ <arg><replaceable>COMMAND</replaceable></arg>
+ <arg rep="repeat"><replaceable>ARGUMENTS</replaceable></arg>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+
+ <refsect1 id='description'><title>Description</title>
+ <para><command>nmcli</command> is a command-line tool for controlling
+ NetworkManager and reporting network status. It can be utilized as a
+ replacement for <command>nm-applet</command> or other graphical clients.
+ <command>nmcli</command> is used to create, display, edit, delete, activate,
+ and deactivate network connections, as well as control and display network
+ device status.</para>
+
+ <para>Typical uses include:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Scripts: Utilize NetworkManager via <command>nmcli</command> instead of
+ managing network connections manually. <command>nmcli</command> supports a
+ terse output format which is better suited for script processing. Note that
+ NetworkManager can also execute scripts, called "dispatcher scripts", in
+ response to network events. See
+ <citerefentry><refentrytitle>NetworkManager</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+ for details about these dispatcher scripts.</para>
+ </listitem>
+
+ <listitem>
+ <para>Servers, headless machines, and terminals: <command>nmcli</command> can
+ be used to control NetworkManager without a GUI, including creating, editing,
+ starting and stopping network connections and viewing network status.</para>
+ </listitem>
+ </itemizedlist>
+ </refsect1>
+
+ <refsect1 id='options'><title>Options</title>
+ <variablelist>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-t</option></arg>
+ <arg choice='plain'><option>--terse</option></arg>
+ </group></term>
+
+ <listitem>
+ <para>Output is terse. This mode is designed and suitable for computer (script)
+ processing.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-p</option></arg>
+ <arg choice='plain'><option>--pretty</option></arg>
+ </group></term>
+
+ <listitem>
+ <para>Output is pretty. This causes <command>nmcli</command> to produce easily
+ readable outputs for humans, i.e. values are aligned, headers are printed,
+ etc.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-m</option></arg>
+ <arg choice='plain'><option>--mode</option></arg>
+ <group choice='req'>
+ <arg choice='plain'>tabular</arg>
+ <arg choice='plain'>multiline</arg>
+ </group>
+ </group></term>
+
+ <listitem>
+ <para>Switch between tabular and multiline output:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><arg choice='plain'>tabular</arg></term>
+ <listitem>
+ <para>Output is a table where each line describes a single entry.
+ Columns define particular properties of the entry.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><arg choice='plain'>multiline</arg></term>
+ <listitem>
+ <para>Each entry comprises multiple lines, each property on its
+ own line. The values are prefixed with the property name.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>If omitted, default is <literal>tabular</literal> for most commands.
+ For the commands producing more structured information, that cannot be
+ displayed on a single line, default is <literal>multiline</literal>.
+ Currently, they are:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>nmcli connection show <replaceable>ID</replaceable></literal></para>
+ </listitem>
+
+ <listitem>
+ <para><literal>nmcli device show</literal></para>
+ </listitem>
+ </itemizedlist>
+
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-c</option></arg>
+ <arg choice='plain'><option>--colors</option></arg>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ <arg choice='plain'>auto</arg>
+ </group>
+ </group></term>
+
+ <listitem>
+ <para>This option controls color output (using terminal escape sequences).
+ <literal>yes</literal> enables colors, <literal>no</literal> disables them,
+ <literal>auto</literal> only produces colors when standard output is directed
+ to a terminal. The default value is <literal>auto</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-f</option></arg>
+ <arg choice='plain'><option>--fields</option></arg>
+ <group choice='req'>
+ <arg conice='plain' rep='repeat'><replaceable>field</replaceable></arg>
+ <arg choice='plain'>all</arg>
+ <arg choice='plain'>common</arg>
+ </group>
+ </group></term>
+
+ <listitem>
+ <para>This option is used to specify what fields (column names) should be
+ printed. Valid field names differ for specific commands. List available fields
+ by providing an invalid value to the <option>--fields</option> option.
+ <literal>all</literal> is used to print all valid field values of the
+ command. <literal>common</literal> is used to print common field values of
+ the command.</para>
+
+ <para>If omitted, default is <literal>common</literal>. The option is
+ mandatory when <option>--terse</option> is used. In this case, generic values
+ <literal>all</literal> and <literal>common</literal> cannot be used. This
+ is to maintain compatibility when new fields are added in the future.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-e</option></arg>
+ <arg choice='plain'><option>--escape</option></arg>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </group></term>
+
+ <listitem>
+ <para>Whether to escape <literal>:</literal> and <literal>\</literal> characters in terse tabular mode. The
+ escape character is <literal>\</literal>.</para>
+
+ <para>If omitted, default is <literal>yes</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-n</option></arg>
+ <arg choice='plain'><option>--nocheck</option></arg>
+ </group></term>
+
+ <listitem>
+ <para>This option can be used to force <command>nmcli</command> to skip
+ checking <command>nmcli</command> and <command>NetworkManager</command>
+ version compatibility. Use it with care, because using incompatible versions
+ may produce incorrect results.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-a</option></arg>
+ <arg choice='plain'><option>--ask</option></arg>
+ </group></term>
+
+ <listitem>
+ <para>When using this option <command>nmcli</command> will stop and ask for any
+ missing required arguments, so do not use this option for non-interactive
+ purposes like scripts. This option controls, for example, whether you will be
+ prompted for a password if it is required for connecting to a network.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-s</option></arg>
+ <arg choice='plain'><option>--show-secrets</option></arg>
+ </group></term>
+
+ <listitem>
+ <para>When using this option <command>nmcli</command> will display passwords
+ and secrets that might be present in an output of an operation. This option
+ also influences echoing passwords typed by user as an input.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><arg>
+ <group choice='plain'>
+ <arg choice='plain'><option>-w</option></arg>
+ <arg choice='plain'><option>--wait</option></arg>
+ </group>
+ <arg choice='plain' rep='repeat'><replaceable>seconds</replaceable></arg>
+ </arg></term>
+
+ <listitem>
+ <para>This option sets a timeout period for which <command>nmcli</command> will
+ wait for NetworkManager to finish operations. It is
+ especially useful for commands that may take a longer time to complete, e.g.
+ connection activation.</para>
+
+ <para>Specifying a value of <literal>0</literal> instructs
+ <command>nmcli</command> not to wait but to exit immediately with a status of
+ success. The default value depends on the executed command.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-v</option></arg>
+ <arg choice='plain'><option>--version</option></arg>
+ </group></term>
+
+ <listitem>
+ <para>Show <command>nmcli</command> version.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><group choice='plain'>
+ <arg choice='plain'><option>-h</option></arg>
+ <arg choice='plain'><option>--help</option></arg>
+ </group></term>
+
+ <listitem>
+ <para>Print help information.</para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+ </refsect1>
+
+ <refsect1 id='general'><title>General Commands</title>
+
+ <cmdsynopsis>
+ <command>nmcli general</command>
+ <group choice='req'>
+ <arg choice='plain'><command>status</command></arg>
+ <arg choice='plain'><command>hostname</command></arg>
+ <arg choice='plain'><command>permissions</command></arg>
+ <arg choice='plain'><command>logging</command></arg>
+ </group>
+ <arg rep='repeat'><replaceable>ARGUMENTS</replaceable></arg>
+ </cmdsynopsis>
+
+ <para>Use this command to show NetworkManager status and permissions. You can also get
+ and change system hostname, as well as NetworkManager logging level and domains.</para>
+
+ <variablelist>
+
+ <varlistentry>
+ <term><command>status</command></term>
+
+ <listitem>
+ <para>Show overall status of NetworkManager. This is the default action, when
+ no additional command is provided for <command>nmcli general</command>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>hostname</command>
+ <arg><replaceable>hostname</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Get and change system hostname. With no arguments, this prints currently
+ configured hostname. When you pass a hostname, it will be handed over to
+ NetworkManager to be set as a new system hostname.</para>
+
+ <para>Note that the term "system" hostname may also be referred to as
+ "persistent" or "static" by other programs or tools. The hostname is stored
+ in <filename>/etc/hostname</filename> file in most distributions. For example,
+ systemd-hostnamed service uses the term "static" hostname and it only reads
+ the <filename>/etc/hostname</filename> file when it starts.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>permissions</command></term>
+
+ <listitem>
+ <para>Show the permissions a caller has for various authenticated operations
+ that NetworkManager provides, like enable and disable networking, changing
+ Wi-Fi and WWAN state, modifying connections, etc.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>logging</command>
+ <arg><option>level</option> <replaceable>level</replaceable></arg>
+ <arg rep='repeat'><option>domain</option> <replaceable>domains</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Get and change NetworkManager logging level and
+ domains. Without any argument current logging level and domains are shown. In
+ order to change logging state, provide <option>level</option> and, or,
+ <option>domain</option> parameters. See
+ <citerefentry><refentrytitle>NetworkManager.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ for available level and domain values.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1 id='networking'><title>Networking Control Commands</title>
+
+ <cmdsynopsis>
+ <command>nmcli networking</command>
+ <group choice='req'>
+ <arg choice='plain'><command>on</command></arg>
+ <arg choice='plain'><command>off</command></arg>
+ <arg choice='plain'><command>connectivity</command></arg>
+ </group>
+ <arg rep='repeat'><replaceable>ARGUMENTS</replaceable></arg>
+ </cmdsynopsis>
+
+ <para>Query NetworkManager networking status, enable and disable networking.
+ </para>
+
+ <variablelist>
+
+ <varlistentry>
+ <term><command>on</command></term>
+ <term><command>off</command></term>
+
+ <listitem>
+ <para>Enable enable or disable networking control by NetworkManager.
+ All interfaces managed by NetworkManager are deactivated when networking
+ is disabled.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>connectivity</command>
+ <arg>check</arg>
+ </term>
+
+ <listitem>
+ <para>Get network connectivity state. The optional <option>check</option>
+ argument tells NetworkManager to re-check the connectivity, else the most
+ recent known connectivity state is displayed without re-checking.</para>
+
+ <para>Possible states are:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><arg choice='plain'>none</arg></term>
+ <listitem>
+ <para>the host is not connected to any network.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><arg choice='plain'>portal</arg></term>
+ <listitem>
+ <para>the host is behind a captive portal and cannot reach the full Internet.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><arg choice='plain'>limited</arg></term>
+ <listitem>
+ <para>the host is connected to a network, but it has no access to the Internet.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><arg choice='plain'>full</arg></term>
+ <listitem>
+ <para>the host is connected to a network and has full access to the Internet.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><arg choice='plain'>unknown</arg></term>
+ <listitem>
+ <para>the connectivity status cannot be found out.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+ </refsect1>
+
+ <refsect1 id='radio'><title>Radio Transmission Control Commands</title>
+
+ <cmdsynopsis>
+ <command>nmcli radio</command>
+ <group choice='req'>
+ <arg choice='plain'><command>all</command></arg>
+ <arg choice='plain'><command>wifi</command></arg>
+ <arg choice='plain'><command>wwan</command></arg>
+ </group>
+ <arg rep='repeat'><replaceable>ARGUMENTS</replaceable></arg>
+ </cmdsynopsis>
+
+ <para>Show radio switches status, or enable and disable the switches.</para>
+
+ <variablelist>
+
+ <varlistentry>
+ <term>
+ <command>wifi</command>
+ <group>
+ <arg choice='plain'>on</arg>
+ <arg choice='plain'>off</arg>
+ </group>
+ </term>
+
+ <listitem>
+ <para>Show or set status of Wi-Fi in NetworkManager. If no arguments are
+ supplied, Wi-Fi status is printed; <option>on</option> enables Wi-Fi;
+ <option>off</option> disables Wi-Fi.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>wwan</command>
+ <group>
+ <arg choice='plain'>on</arg>
+ <arg choice='plain'>off</arg>
+ </group>
+ </term>
+
+ <listitem>
+ <para>Show or set status of WWAN (mobile broadband) in NetworkManager. If no
+ arguments are supplied, mobile broadband status is printed;
+ <option>on</option> enables mobile broadband, <option>off</option>
+ disables it.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>all</command>
+ <group>
+ <arg choice='plain'>on</arg>
+ <arg choice='plain'>off</arg>
+ </group>
+ </term>
+
+ <listitem>
+ <para>Show or set all previously mentioned radio switches at the same time.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1 id='monitor'><title>Activity Monitor</title>
+
+ <cmdsynopsis>
+ <command>nmcli monitor</command>
+ </cmdsynopsis>
+
+ <para>Observe NetworkManager activity. Watches for changes
+ in connectivity state, devices or connection profiles.</para>
+
+ <para>See also <command>nmcli connection monitor</command>
+ and <command>nmcli device monitor</command> to watch
+ for changes in certain devices or connections.</para>
+ </refsect1>
+
+ <refsect1 id='connection'><title>Connection Management Commands</title>
+
+ <cmdsynopsis>
+ <command>nmcli connection</command>
+ <group choice='req'>
+ <arg choice='plain'><command>show</command></arg>
+ <arg choice='plain'><command>up</command></arg>
+ <arg choice='plain'><command>down</command></arg>
+ <arg choice='plain'><command>add</command></arg>
+ <arg choice='plain'><command>edit</command></arg>
+ <arg choice='plain'><command>modify</command></arg>
+ <arg choice='plain'><command>delete</command></arg>
+ <arg choice='plain'><command>monitor</command></arg>
+ <arg choice='plain'><command>reload</command></arg>
+ <arg choice='plain'><command>load</command></arg>
+ </group>
+ <arg rep='repeat'><replaceable>ARGUMENTS</replaceable></arg>
+ </cmdsynopsis>
+
+ <para>NetworkManager stores all network configuration as "connections",
+ which are collections of data (Layer2 details, IP addressing, etc.) that
+ describe how to create or connect to a network. A connection is "active"
+ when a device uses that connection's configuration to create or connect to
+ a network. There may be multiple connections that apply to a device, but only
+ one of them can be active on that device at any given time. The additional
+ connections can be used to allow quick switching between different networks
+ and configurations.</para>
+
+ <para>Consider a machine which is usually connected to a DHCP-enabled network,
+ but sometimes connected to a testing network which uses static IP addressing.
+ Instead of manually reconfiguring eth0 each time the network is changed, the
+ settings can be saved as two connections which both apply to eth0, one for DHCP
+ (called <literal>default</literal>) and one with the static addressing details (called
+ <literal>testing</literal>). When connected to the DHCP-enabled network the user would run
+ <command>nmcli con up default</command> , and when connected to the static network the user
+ would run <command>nmcli con up testing</command>.</para>
+
+ <variablelist>
+
+ <varlistentry>
+ <term>
+ <command>show</command>
+ <arg><option>--active</option></arg>
+ <arg>
+ <option>--order</option>
+ <arg choice='plain' rep='repeat'>[+-]<replaceable>category</replaceable>:</arg>
+ </arg>
+ </term>
+
+ <listitem>
+ <para>List in-memory and on-disk connection profiles, some of which may also be
+ active if a device is using that connection profile. Without a parameter, all
+ profiles are listed. When <option>--active</option> option is specified, only
+ the active profiles are shown.</para>
+
+ <para>The <option>--order</option> option can be used to get custom
+ ordering of connections. The connections can be ordered by active status
+ (<literal>active</literal>), name (<literal>name</literal>), type
+ (<literal>type</literal>) or D-Bus path (<literal>path</literal>). If
+ connections are equal according to a sort order category, an additional
+ category can be specified. The default sorting order is equivalent to
+ <literal>--order active:name:path</literal>. <literal>+</literal> or no
+ prefix means sorting in ascending order (alphabetically or in numbers),
+ <literal>-</literal> means reverse (descending) order. The category names
+ can be abbreviated (e.g. <literal>--order -a:na</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>show</command>
+ <arg><option>--active</option></arg>
+ <group>
+ <arg choice='plain'><option>id</option></arg>
+ <arg choice='plain'><option>uuid</option></arg>
+ <arg choice='plain'><option>path</option></arg>
+ <arg choice='plain'><option>apath</option></arg>
+ </group>
+ <arg rep='repeat' choice='plain'><replaceable>ID</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Show details for specified connections. By default, both static
+ configuration and active connection data are displayed. When
+ <option>--active</option> option is specified, only the active profiles are
+ taken into account. Use global <option>--show-secrets</option> option to
+ display secrets associated with the profile.</para>
+
+ <para><option>id</option>, <option>uuid</option>,
+ <option>path</option> and <option>apath</option> keywords can be used
+ if <replaceable>ID</replaceable> is ambiguous. Optional
+ <replaceable>ID</replaceable>-specifying keywords are:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>id</option></term>
+ <listitem>
+ <para>the <replaceable>ID</replaceable> denotes a connection name.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>uuid</option></term>
+ <listitem>
+ <para>the <replaceable>ID</replaceable> denotes a connection UUID.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>path</option></term>
+ <listitem>
+ <para>the <replaceable>ID</replaceable> denotes a D-Bus
+ static connection path in the format of
+ /org/freedesktop/NetworkManager/Settings/<replaceable>num</replaceable>
+ or just <replaceable>num</replaceable>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>apath</option></term>
+ <listitem>
+ <para>the <replaceable>ID</replaceable> denotes a D-Bus active connection path in the format of
+ /org/freedesktop/NetworkManager/ActiveConnection/<replaceable>num</replaceable> or just
+ <replaceable>num</replaceable>.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>It is possible to filter the output using the global
+ <option>--fields</option> option. Use the following values:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>profile</option></term>
+ <listitem>
+ <para>only shows static profile configuration.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>active</option></term>
+ <listitem>
+ <para>only shows active connection data (when the profile is active).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>You can also specify particular fields. For static configuration, use
+ setting and property names as described in
+ <citerefentry><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum>
+ </citerefentry> manual page. For active data use GENERAL, IP4, DHCP4, IP6,
+ DHCP6, VPN.</para>
+
+ <para>When no command is given to the <command>nmcli connection</command>,
+ the default action is <command>nmcli connection show</command>.</para>
+
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>up</command>
+ <group>
+ <arg choice='plain'><option>id</option></arg>
+ <arg choice='plain'><option>uuid</option></arg>
+ <arg choice='plain'><option>path</option></arg>
+ </group>
+ <arg rep='repeat' choice='plain'><replaceable>ID</replaceable></arg>
+ <arg><option>ifname</option> <replaceable>ifname</replaceable></arg>
+ <arg><option>ap</option> <replaceable>BSSID</replaceable></arg>
+ <arg><option>passwd-file</option> <replaceable>file</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Activate a connection. The connection is identified by its name, UUID or
+ D-Bus path. If <replaceable>ID</replaceable> is ambiguous, a keyword <option>id</option>,
+ <option>uuid</option> or <option>path</option> can be used. When
+ requiring a particular device to activate the connection on, the
+ <option>ifname</option> option with interface name should be given. If the
+ <replaceable>ID</replaceable> is not given an <option>ifname</option> is required, and
+ NetworkManager will activate the best available connection for the given
+ <option>ifname</option>. In case of a VPN connection, the
+ <option>ifname</option> option specifies the device of the base connection.
+ The <option>ap</option> option specify what particular AP should be used in
+ case of a Wi-Fi connection.</para>
+
+ <para>If <option>--wait</option> option is not specified, the default timeout will be 90
+ seconds.</para>
+
+ <para>See <command>connection show</command> above for the description of the
+ <replaceable>ID</replaceable>-specifying keywords.</para>
+
+ <para>Available options are:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>ifname</option></term>
+ <listitem>
+ <para>interface that will be used for activation.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>ap</option></term>
+ <listitem>
+ <para>BSSID of the AP which the command should connect to (for Wi-Fi connections).</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>passwd-file</option></term>
+ <listitem>
+ <para>some networks may require credentials during activation. You can give
+ these credentials using this option. Each line of the file should contain one
+ password in the form:
+
+ <programlisting>setting_name.property_name:the password</programlisting>
+
+ For example, for WPA Wi-Fi with PSK, the line would be
+
+ <programlisting>802-11-wireless-security.psk:secret12345</programlisting>
+
+ For 802.1X password, the line would be
+
+ <programlisting>802-1x.password:my 1X password</programlisting>
+
+ <command>nmcli</command> also accepts <literal>wifi-sec</literal> and <literal>wifi</literal> strings instead of
+ <literal>802-11-wireless-security</literal>. When NetworkManager requires a password and it is
+ not given, <command>nmcli</command> will ask for it when run with <option>--ask</option>.
+ If <option>--ask</option> was not passed, NetworkManager can ask another secret
+ agent that may be running (typically a GUI secret agent, such as nm-applet or
+ gnome-shell).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>down</command>
+ <group>
+ <arg choice='plain'><option>id</option></arg>
+ <arg choice='plain'><option>uuid</option></arg>
+ <arg choice='plain'><option>path</option></arg>
+ <arg choice='plain'><option>apath</option></arg>
+ </group>
+ <arg rep='repeat' choice='plain'><replaceable>ID</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Deactivate a connection from a device without preventing the device from
+ further auto-activation. Multiple connections can be passed to the
+ command.</para>
+
+ <para>Be aware that this command deactivates the specified active connection,
+ but the device on which the connection was active, is still ready to connect
+ and will perform auto-activation by looking for a suitable connection that has
+ the 'autoconnect' flag set. This includes the just deactivated connection. So
+ if the connection is set to auto-connect, it will be automatically started on
+ the disconnected device again.</para>
+
+ <para>In most cases you may want to use <command>device disconnect</command>
+ command instead.</para>
+
+ <para>The connection is identified by its name, UUID or D-Bus path. If
+ <replaceable>ID</replaceable> is ambiguous, a keyword <option>id</option>,
+ <option>uuid</option>, <option>path</option> or
+ <option>apath</option> can be used.</para>
+
+ <para> See <command>connection show</command> above for the description of
+ the <replaceable>ID</replaceable>-specifying keywords.</para>
+
+ <para>If <option>--wait</option> option is not specified, the default timeout
+ will be 10 seconds.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>add</command>
+ <arg choice='plain'><option>ifname</option> <replaceable>ifname</replaceable></arg>
+ <arg>con-name <replaceable>name</replaceable></arg>
+ <arg>
+ <option>autoconnect</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ <arg>
+ <option>save</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ <arg>master <replaceable>master</replaceable></arg>
+ <arg>slave-type <replaceable>type</replaceable></arg>
+ <arg>type <replaceable>type</replaceable></arg>
+ <arg rep="repeat"><replaceable>ARGUMENTS</replaceable></arg>
+ <arg>ip4 <replaceable>addr</replaceable></arg>
+ <arg>gw4 <replaceable>addr</replaceable></arg>
+ <arg>ip6 <replaceable>addr</replaceable></arg>
+ <arg>gw6 <replaceable>addr</replaceable></arg>
+ <arg>
+ <option>--</option>
+ <arg choice='plain' rep='repeat'>
+ [+|-]<replaceable>setting</replaceable>.<replaceable>property</replaceable>
+ <replaceable>value</replaceable>
+ </arg>
+ </arg>
+ </term>
+
+ <listitem>
+ <para>Add a connection for NetworkManager. Arguments differ according to connection types, see below.</para>
+
+ <variablelist>
+
+ <varlistentry>
+ <term><option>ifname</option></term>
+ <listitem>
+ <para>interface to bind the connection to. The connection will only be
+ applicable to this interface name. A special value of <literal>*</literal>
+ can be used for interface-independent connections. The
+ <option>ifname</option> argument is mandatory for all connection types
+ except bond, team, bridge and vlan. Note: use quotes around
+ <literal>*</literal> to suppress shell expansion.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>con-name</option></term>
+ <listitem>
+ <para>connection name (when not provided a default name is generated:
+ &lt;type&gt;[-&lt;ifname&gt;][-&lt;num&gt;]).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>autoconnect</option></term>
+ <listitem>
+ <para>whether the connection profile can be automatically activated (default:
+ yes).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>save</option></term>
+ <listitem>
+ <para>whether the connection should be persistent, i.e. NetworkManager should
+ store it on disk (default: <literal>yes</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>master</option></term>
+ <listitem>
+ <para>master interface name, or connection UUID or ID of master connection
+ profile. The value can be prefixed with <literal>ifname/</literal>,
+ <literal>uuid/</literal> or <literal>id/</literal> to disambiguate it.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>slave-type</option></term>
+ <listitem>
+ <para>type of master connection. Only required when it can not be inferred
+ (i.e. the master connection does
+ not exist yet).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>type</option></term>
+ <listitem>
+ <para>connection type; see below for allowed values. Note that types
+ <option>bond-slave</option>, <option>team-slave</option> and
+ <option>bridge-slave</option> create <option>ethernet</option> connection
+ profiles. Their use is discouraged in favor of using a specific type with
+ <option>master</option> option.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type ethernet</option>
+ <arg><option>mac</option> <replaceable>addr</replaceable></arg>
+ <arg><option>cloned-mac</option> <replaceable>addr</replaceable></arg>
+ <arg><option>mtu</option> <replaceable>mtu</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>mac</option></term>
+ <listitem>
+ <para>MAC address of the device this connection is locked to.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>cloned-mac</option></term>
+ <listitem>
+ <para>cloned MAC.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mtu</option></term>
+ <listitem>
+ <para>MTU.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type wifi</option>
+ <arg choice='plain'><option>ssid</option> <replaceable>SSID</replaceable></arg>
+ <arg><option>mac</option> <replaceable>addr</replaceable></arg>
+ <arg><option>cloned-mac</option> <replaceable>addr</replaceable></arg>
+ <arg>
+ <option>mode</option>
+ <group choice='req'>
+ <arg choice='plain'>infrastructure</arg>
+ <arg choice='plain'>ap</arg>
+ <arg choice='plain'>adhoc</arg>
+ </group>
+ </arg>
+ <arg><option>mtu</option> <replaceable>mtu</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>ssid</option></term>
+ <listitem>
+ <para>SSID.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mac</option></term>
+ <listitem>
+ <para>MAC address of the device this connection is locked to.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>cloned-mac</option></term>
+ <listitem>
+ <para>cloned MAC.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mode</option></term>
+ <listitem>
+ <para>Wi-Fi network mode. If blank, <literal>infrastructure</literal>
+ is assumed.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mtu</option></term>
+ <listitem>
+ <para>MTU.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type wimax</option>
+ <arg><option>mac</option> <replaceable>addr</replaceable></arg>
+ <arg><option>nsp</option> <replaceable>nsp</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>mac</option></term>
+ <listitem>
+ <para>MAC address of the device this connection is locked to.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>nsp</option></term>
+ <listitem>
+ <para>Network Service Provider name.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type pppoe</option>
+ <arg choice='plain'><option>username</option> <replaceable>user</replaceable></arg>
+ <arg><option>password</option> <replaceable>passwd</replaceable></arg>
+ <arg><option>service</option> <replaceable>name</replaceable></arg>
+ <arg><option>mtu</option> <replaceable>mtu</replaceable></arg>
+ <arg><option>mac</option> <replaceable>addr</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>username</option></term>
+ <listitem>
+ <para>PPPoE username.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>password</option></term>
+ <listitem>
+ <para>Password for the PPPoE username.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>service</option></term>
+ <listitem>
+ <para>PPPoE service name (if required by concentrator).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mtu</option></term>
+ <listitem>
+ <para>MTU.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mac</option></term>
+ <listitem>
+ <para>MAC address of the device this connection is locked to.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type gsm</option>
+ <arg><option>apn</option> <replaceable>APN</replaceable></arg>
+ <arg><option>username</option> <replaceable>user</replaceable></arg>
+ <arg><option>password</option> <replaceable>passwd</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>apn</option></term>
+ <listitem>
+ <para>APN - GSM Access Point Name.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>user</option></term>
+ <listitem>
+ <para>user name.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>password</option></term>
+ <listitem>
+ <para>password.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type cdma</option>
+ <arg><option>username</option> <replaceable>user</replaceable></arg>
+ <arg><option>password</option> <replaceable>passwd</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>user</option></term>
+ <listitem>
+ <para>user name.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>password</option></term>
+ <listitem>
+ <para>password.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type infiniband</option>
+ <arg><option>mac</option> <replaceable>addr</replaceable></arg>
+ <arg><option>mtu</option> <replaceable>mtu</replaceable></arg>
+ <arg>
+ <option>transport-mode</option>
+ <group choice='req'>
+ <arg choice='plain'>datagram</arg>
+ <arg choice='plain'>connected</arg>
+ </group>
+ </arg>
+ <arg><option>parent</option> <replaceable>device</replaceable></arg>
+ <arg><option>p-key</option> <replaceable>key</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>mac</option></term>
+ <listitem>
+ <para>MAC address of the device this connection is locked to
+ (InfiniBand MAC is 20 bytes).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mtu</option></term>
+ <listitem>
+ <para>MTU.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>transport-mode</option></term>
+ <listitem>
+ <para>InfiniBand transport mode.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>parent</option></term>
+ <listitem>
+ <para>the interface name of the parent device (if any).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>p-key</option></term>
+ <listitem>
+ <para>the InfiniBand P_Key (16-bit unsigned integer).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type bluetooth</option>
+ <arg><option>addr</option> <replaceable>addr</replaceable></arg>
+ <arg>
+ <option>bt-type</option>
+ <group choice='req'>
+ <arg choice='plain'>panu</arg>
+ <arg choice='plain'>dun-gsm</arg>
+ <arg choice='plain'>dun-cdma</arg>
+ </group>
+ </arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>addr</option></term>
+ <listitem>
+ <para>Bluetooth device address (MAC).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>bt-type</option></term>
+ <listitem>
+ <para>Bluetooth connection type.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type vlan</option>
+ <arg choice='plain'><option>dev</option> <replaceable>device</replaceable></arg>
+ <arg choice='plain'><option>id</option> <replaceable>id</replaceable></arg>
+ <arg><option>flags</option> <replaceable>flags</replaceable></arg>
+ <arg><option>ingress</option> <replaceable>mapping</replaceable></arg>
+ <arg><option>egress</option> <replaceable>mapping</replaceable></arg>
+ <arg><option>mtu</option> <replaceable>mtu</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>dev</option></term>
+ <listitem>
+ <para>parent device this VLAN is on.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>id</option></term>
+ <listitem>
+ <para>VLAN ID in range 0-4095.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>flags</option></term>
+ <listitem>
+ <para>flags.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>ingress</option></term>
+ <listitem>
+ <para>VLAN ingress priority mapping.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>egress</option></term>
+ <listitem>
+ <para>VLAN egress priority mapping.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mtu</option></term>
+ <listitem>
+ <para>MTU.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type bond</option>
+ <arg>
+ <option>mode</option>
+ <group choice='req'>
+ <arg choice='plain'>active-backup</arg>
+ <arg choice='plain'>balance-xor</arg>
+ <arg choice='plain'>broadcast</arg>
+ <arg choice='plain'>802.3ad</arg>
+ <arg choice='plain'>balance-tlb</arg>
+ <arg choice='plain'>balance-alb</arg>
+ <arg choice='plain'><replaceable>num</replaceable></arg>
+ </group>
+ </arg>
+ <arg><option>primary</option> <replaceable>ifname</replaceable></arg>
+ <arg><option>miimon</option> <replaceable>num</replaceable></arg>
+ <arg><option>downdelay</option> <replaceable>num</replaceable></arg>
+ <arg><option>updelay</option> <replaceable>num</replaceable></arg>
+ <arg><option>arp-interval</option> <replaceable>num</replaceable></arg>
+ <arg><option>arp-ip-target</option> <replaceable>num</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+
+ <varlistentry>
+ <term><option>mode</option></term>
+ <listitem>
+ <para>bonding mode (default: <literal>balance-rr</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>primary</option></term>
+ <listitem>
+ <para>primary interface name (for <literal>active-backup</literal> mode).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>miimon</option></term>
+ <listitem>
+ <para>miimon (default: <literal>100</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>downdelay</option></term>
+ <listitem>
+ <para>downdelay (default: <literal>0</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>updelay</option></term>
+ <listitem>
+ <para>updelay (default: <literal>0</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>arp-interval</option></term>
+ <listitem>
+ <para>ARP interval (default: <literal>0</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>arp-ip-target</option></term>
+ <listitem>
+ <para>ARP IP target.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type bond-slave</option>
+ <arg><option>master</option> <replaceable>master</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>master</option></term>
+ <listitem>
+ <para>master bond interface name, or connection UUID or
+ ID of bond master connection profile. The value can be
+ prefixed with <literal>ifname/</literal>,
+ <literal>uuid/</literal> or <literal>id/</literal> to
+ disambiguate it.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type team</option>
+ <arg>
+ <option>config</option>
+ <group choice='req'>
+ <arg choice='plain'>file</arg>
+ <arg choice='plain'><replaceable>JSON</replaceable></arg>
+ </group>
+ </arg>
+ </term>
+ <listitem>
+ <variablelist>
+
+ <varlistentry>
+ <term><option>config</option></term>
+ <listitem>
+ <para>JSON configuration for team.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type team-slave</option>
+ <arg>
+ <option>config</option>
+ <option><replaceable>JSON</replaceable></option>
+ </arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>master</option></term>
+ <listitem>
+ <para>master team interface name, or connection UUID or
+ ID of team master connection profile. The value can be
+ prefixed with <literal>ifname/</literal>,
+ <literal>uuid/</literal> or <literal>id/</literal>to
+ disambiguate it.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>config</option></term>
+ <listitem>
+ <para>JSON configuration for team.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type bridge</option>
+ <arg>
+ <option>stp</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ <arg><option>priority</option> <replaceable>num</replaceable></arg>
+ <arg><option>forward-delay</option> <replaceable>2-30</replaceable></arg>
+ <arg><option>hello-time</option> <replaceable>1-10</replaceable></arg>
+ <arg><option>max-age</option> <replaceable>6-42</replaceable></arg>
+ <arg><option>ageing-time</option> <replaceable>0-1000000</replaceable></arg>
+ <arg>
+ <option>multicast-snooping</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ <arg><option>mac</option> <replaceable>addr</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>stp</option></term>
+ <listitem>
+ <para>controls whether Spanning Tree Protocol (STP) is enabled for this bridge
+ (default: <literal>yes</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>priority</option></term>
+ <listitem>
+ <para>sets STP priority (default: <literal>128</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>forward-delay</option></term>
+ <listitem>
+ <para>STP forwarding delay, in seconds (default: <literal>15</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>hello-time</option></term>
+ <listitem>
+ <para>STP hello time, in seconds (default: <literal>2</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>max-age</option></term>
+ <listitem>
+ <para>STP maximum message age, in seconds (default: <literal>20</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>ageing-time</option></term>
+ <listitem>
+ <para>the Ethernet MAC address aging time, in seconds (default: <literal>300</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>multicast-snooping</option></term>
+ <listitem>
+ <para>controls whether IGMP snooping is enabled (default: <literal>yes</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mac</option></term>
+ <listitem>
+ <para>MAC address of the bridge (note: this requires a recent kernel feature,
+ originally introduced in 3.15 upstream kernel).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type bridge-slave</option>
+ <arg><option>master</option> <replaceable>master</replaceable></arg>
+ <arg><option>priority</option> <replaceable>num</replaceable></arg>
+ <arg><option>path-cost</option> <replaceable>1-65535</replaceable></arg>
+ <arg>
+ <option>hairpin</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>master</option></term>
+ <listitem>
+ <para>master bridge interface name, or connection UUID
+ or ID of bridge master connection profile. The value
+ can be prefixed with <literal>ifname/</literal>,
+ <literal>uuid/</literal> or <literal>id/</literal>
+ to disambiguate it.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>priority</option></term>
+ <listitem>
+ <para>STP priority of this slave (default: <literal>32</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>path-cost</option></term>
+ <listitem>
+ <para>STP port cost for destinations via this slave (default: <literal>100</literal>).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>hairpin</option></term>
+ <listitem>
+ <para>'hairpin mode' for the slave, which allows frames to be sent back out
+ through the slave the frame was received on (default: <literal>yes</literal>).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type vpn</option>
+ <arg><option>type</option> <replaceable>type</replaceable></arg>
+ <arg><option>user</option> <replaceable>username</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>vpn-type</option></term>
+ <listitem>
+ <para>VPN type.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>user</option></term>
+ <listitem>
+ <para>VPN username.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type olpc-mesh</option>
+ <arg choice='plain'><option>ssid</option> <replaceable>SSID</replaceable></arg>
+ <arg><option>channel</option> <replaceable>1-13</replaceable></arg>
+ <arg><option>dhcp-anycast</option> <replaceable>MAC</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>ssid</option></term>
+ <listitem>
+ <para>SSID.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>channel</option></term>
+ <listitem>
+ <para>channel to use for the network.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>dhcp-anycast</option></term>
+ <listitem>
+ <para>anycast DHCP MAC address used when requesting an IP address via DHCP.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type adsl</option>
+ <arg choice='plain'><option>username</option> <replaceable>username</replaceable></arg>
+ <arg choice='plain'>
+ <option>protocol</option>
+ <group choice='req'>
+ <arg choice='plain'>pppoa</arg>
+ <arg choice='plain'>pppoe</arg>
+ <arg choice='plain'>ipoatm</arg>
+ </group>
+ </arg>
+ <arg><option>password</option> <replaceable>passwd</replaceable></arg>
+ <arg>
+ <option>encapsulation</option>
+ <group choice='req'>
+ <arg choice='plain'>vcmux</arg>
+ <arg choice='plain'>llc</arg>
+ </group>
+ </arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>username</option></term>
+ <listitem>
+ <para>ADSL user name.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>protocol</option></term>
+ <listitem>
+ <para>ADSL protocol.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>password</option></term>
+ <listitem>
+ <para>ADSL password.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>encapsulation</option></term>
+ <listitem>
+ <para>ADSL encapsulation.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type tun</option>
+ <arg choice='plain'>
+ <option>mode</option>
+ <group choice='req'>
+ <arg choice='plain'>tun</arg>
+ <arg choice='plain'>tap</arg>
+ </group>
+ </arg>
+ <arg><option>owner</option> <replaceable>UID</replaceable></arg>
+ <arg><option>group</option> <replaceable>GID</replaceable></arg>
+ <arg>
+ <option>pi</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ <arg>
+ <option>vnet-hdr</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ <arg>
+ <option>multi-queue</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>mode</option></term>
+ <listitem>
+ <para>Mode for the device.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>owner</option></term>
+ <listitem>
+ <para>UID of the owner.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>group</option></term>
+ <listitem>
+ <para>GID of the group.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>pi</option></term>
+ <listitem>
+ <para>include packet information (~IFF_NO_PI flag).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>vnet-hdr</option></term>
+ <listitem>
+ <para>send and receive large (i.e. GSO) packets and packets with partial
+ checksums (IFF_VNET_HDR flag).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>multi-queue</option></term>
+ <listitem>
+ <para>multi-queue support for tun/tap device (IFF_MULTI_QUEUE flag).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type ip-tunnel</option>
+ <arg choice='plain'>
+ <option>mode</option>
+ <group choice='req'>
+ <arg choice='plain'>ipip</arg>
+ <arg choice='plain'>gre</arg>
+ <arg choice='plain'>sit</arg>
+ <arg choice='plain'>isatap</arg>
+ <arg choice='plain'>vti</arg>
+ <arg choice='plain'>ip6ip6</arg>
+ <arg choice='plain'>ipip6</arg>
+ <arg choice='plain'>ip6gre</arg>
+ <arg choice='plain'>vti6</arg>
+ <arg choice='plain'>tun</arg>
+ </group>
+ </arg>
+ <arg choice='plain'><option>remote</option> <replaceable>addr</replaceable></arg>
+ <arg><option>local</option> <replaceable>addr</replaceable></arg>
+ <arg><option>dev</option> <replaceable>device</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>mode</option></term>
+ <listitem>
+ <para>tunnel mode.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>remote</option></term>
+ <listitem>
+ <para>IPv4 or IPv6 address of the remote tunnel endpoint.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>local</option></term>
+ <listitem>
+ <para>IPv4 or IPv6 address of the local tunnel endpoint.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>dev</option></term>
+ <listitem>
+ <para>device to use for tunnel endpoint communication.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type macvlan</option>
+ <arg choice='plain'><option>dev</option> <replaceable>device</replaceable></arg>
+ <arg choice='plain'>
+ <option>mode</option>
+ <group choice='req'>
+ <arg choice='plain'>vepa</arg>
+ <arg choice='plain'>bridge</arg>
+ <arg choice='plain'>private</arg>
+ <arg choice='plain'>passthru</arg>
+ <arg choice='plain'>source</arg>
+ </group>
+ </arg>
+ <arg>
+ <option>tap</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>dev</option></term>
+ <listitem>
+ <para>parent device this MACVLAN is on.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>mode</option></term>
+ <listitem>
+ <para>MACVLAN mode, which specifies the communication mechanism between
+ multiple MACVLANs on the same lower device.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>tap</option></term>
+ <listitem>
+ <para>controls the device type. If set to 'yes' a MACVTAP will be created
+ (default: <literal>no</literal>).</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <option>type vxlan</option>
+ <arg choice='plain'><option>id</option> <replaceable>id</replaceable></arg>
+ <arg choice='plain'><option>remote</option> <replaceable>addr</replaceable></arg>
+ <arg><option>dev</option> <replaceable>parent device (ifname or connection UUID)</replaceable></arg>
+ <arg><option>local</option> <replaceable>addr</replaceable></arg>
+ <arg><option>source-port-min</option> <replaceable>0-65535</replaceable></arg>
+ <arg><option>source-port-max</option> <replaceable>0-65535</replaceable></arg>
+ <arg><option>destination-port</option> <replaceable>0-65535</replaceable></arg>
+ </term>
+ <listitem>
+ <variablelist>
+ <varlistentry>
+ <term><option>id</option></term>
+ <listitem>
+ <para>VXLAN Network Identifer to use.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>remote</option></term>
+ <listitem>
+ <para>unicast destination IP address or multicast IP address to join.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>dev</option></term>
+ <listitem>
+ <para>device to use for tunnel endpoint communication.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>local</option></term>
+ <listitem>
+ <para>source IP address.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>source-port-min</option></term>
+ <listitem>
+ <para>minimum UDP source port to communicate to the remote VXLAN tunnel endpoint.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>source-port-max</option></term>
+ <listitem>
+ <para>maximum UDP source port to communicate to the remote VXLAN tunnel endpoint.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>destination-port</option></term>
+ <listitem>
+ <para>UDP destination port to communicate to the remote VXLAN tunnel endpoint.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>ip4</option></term>
+ <term><option>gw4</option></term>
+ <listitem>
+ <para>IPv4 addresses.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>ip6</option></term>
+ <term><option>gw6</option></term>
+ <listitem>
+ <para>IPv6 addresses.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>--</option></term>
+ <listitem>
+ <para>If a <option>--</option> argument is encountered, the rest of command
+ line is interpreted as property list in the same format as <command>connection
+ modify</command> command accepts. This makes it possible to adjust the
+ connection properties before it's added.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>edit</command>
+ <group choice='req'>
+ <arg choice='plain'>
+ <group>
+ <arg choice='plain'><option>id</option></arg>
+ <arg choice='plain'><option>uuid</option></arg>
+ <arg choice='plain'><option>path</option></arg>
+ </group>
+ <arg rep='repeat' choice='plain'><replaceable>ID</replaceable></arg>
+ </arg>
+ <arg choice='plain'>
+ <arg><option>type</option> <replaceable>type</replaceable></arg>
+ <arg><option>con-name</option> <replaceable>name</replaceable></arg>
+ </arg>
+ </group>
+ </term>
+
+ <listitem>
+ <para>Edit an existing connection or add a new one, using an interactive editor.</para>
+
+ <para>The existing connection is identified by its name, UUID or D-Bus path. If
+ <replaceable>ID</replaceable> is ambiguous, a keyword <option>id</option>,
+ <option>uuid</option>, or <option>path</option> can be used. See
+ <command>connection show</command> above for the description of the
+ <replaceable>ID</replaceable>-specifying keywords. Not providing an
+ <replaceable>ID</replaceable> means that a new connection will be added.</para>
+
+ <para>The interactive editor will guide you through the connection editing and
+ allow you to change connection parameters according to your needs by means of
+ a simple menu-driven interface. The editor indicates what settings and
+ properties can be modified and provides in-line help.</para>
+
+ <para>Available options:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>type</option></term>
+ <listitem>
+ <para>type of the new connection; valid types are the same as for
+ <command>connection add</command> command.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>con-name</option></term>
+ <listitem>
+ <para>name for the new connection. It can be changed later in the editor.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>See also
+ <citerefentry><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum>
+ </citerefentry> for all NetworkManager settings and property names, and their
+ descriptions; and
+ <citerefentry><refentrytitle>nmcli-examples</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ for sample editor sessions.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>modify</command>
+ <arg><option>--temporary</option></arg>
+ <group>
+ <arg choice='plain'><option>id</option></arg>
+ <arg choice='plain'><option>uuid</option></arg>
+ <arg choice='plain'><option>path</option></arg>
+ </group>
+ <arg choice='plain'><replaceable>ID</replaceable></arg>
+ <arg choice='plain' rep='repeat'>
+ [+|-]<replaceable>setting</replaceable>.<replaceable>property</replaceable>
+ <replaceable>value</replaceable>
+ </arg>
+ </term>
+
+ <listitem>
+ <para>Modify one or more properties in the connection profile.</para>
+
+ <para>The connection is identified by its name, UUID or D-Bus path. If
+ <replaceable>ID</replaceable> is ambiguous, a keyword <option>id</option>,
+ <option>uuid</option> or <option>path</option> can be used. See
+ <citerefentry><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum>
+ </citerefentry> for setting and property names, their descriptions and default
+ values. This command supports abbreviations for <replaceable>setting</replaceable>
+ and <replaceable>property</replaceable> provided they are unique. Empty
+ <replaceable>value</replaceable> ("") removes the property value (sets
+ the property to the default value). The provided value overwrites the existing
+ property value.</para>
+
+ <para>If you want to append an item to the existing value, use
+ <literal>+</literal> prefix for the property name. If you want to remove just
+ one item from container-type property, use <literal>-</literal> prefix for
+ the property name and specify a value or an zero-based index of the item to
+ remove (or option name for properties with named options) as
+ <replaceable>value</replaceable>. Of course, <literal>+</literal> and
+ <literal>-</literal> only have a real effect for multi-value (container)
+ properties like <literal>ipv4.dns</literal>, <literal>ipv4.addresses</literal>,
+ <literal>bond.options</literal>, etc.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>clone</command>
+ <arg><option>--temporary</option></arg>
+ <group>
+ <arg choice='plain'><option>id</option></arg>
+ <arg choice='plain'><option>uuid</option></arg>
+ <arg choice='plain'><option>path</option></arg>
+ </group>
+ <arg choice='plain' rep='repeat'><replaceable>ID</replaceable></arg>
+ <arg choice='plain'><option>new</option> <replaceable>name</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Clone a connection. The connection to be cloned is identified by its
+ name, UUID or D-Bus path. If <replaceable>ID</replaceable> is ambiguous, a keyword
+ <option>id</option>, <option>uuid</option> or <option>path</option>
+ can be used. See <command>connection show</command> above for the description
+ of the <replaceable>ID</replaceable>-specifying keywords. <replaceable>name</replaceable> is
+ the name of the new cloned connection. The new connection will be the exact
+ copy except the connection.id (<replaceable>name</replaceable>) and
+ connection.uuid (generated) properties.</para>
+
+ <para>The new connection profile will be saved as persistent unless
+ <option>--temporary</option> option is specified, in which case the new profile
+ won't exist after NetworkManager restart.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>delete</command>
+ <group>
+ <arg choice='plain'><option>id</option></arg>
+ <arg choice='plain'><option>uuid</option></arg>
+ <arg choice='plain'><option>path</option></arg>
+ </group>
+ <arg choice='plain' rep='repeat'><replaceable>ID</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Delete a configured connection. The connection to be deleted is
+ identified by its name, UUID or D-Bus path. If <replaceable>ID</replaceable> is ambiguous, a
+ keyword <option>id</option>, <option>uuid</option> or <option>path</option> can be used.
+ See <command>connection show</command> above for the description of
+ the <replaceable>ID</replaceable>-specifying keywords.</para>
+
+ <para>If <option>--wait</option> option is not specified, the default timeout will be 10
+ seconds.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>monitor</command>
+ <group>
+ <arg choice='plain'><option>id</option></arg>
+ <arg choice='plain'><option>uuid</option></arg>
+ <arg choice='plain'><option>path</option></arg>
+ </group>
+ <arg choice='plain' rep='repeat'><replaceable>ID</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Monitor connection profile activity. This command prints a line whenever
+ the specified connection changes. The connection to be monitored is identified
+ by its name, UUID or D-Bus path. If <replaceable>ID</replaceable> is ambiguous, a keyword
+ <option>id</option>, <option>uuid</option> or <option>path</option>
+ can be used. See <command>connection show</command> above for the description of the
+ <replaceable>ID</replaceable>-specifying keywords.</para>
+
+ <para>Monitors all connection profiles in case none is specified. The command
+ terminates when all monitored connections disappear. If you want to monitor
+ connection creation consider using the global monitor with <command>nmcli
+ monitor</command> command.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>reload</command>
+ </term>
+
+ <listitem>
+ <para>Reload all connection files from disk.
+ NetworkManager does not monitor changes to connection
+ files by default. So you need to use this command in order to tell
+ NetworkManager to re-read the connection profiles from
+ disk when a change was made to them. However, the auto-loading feature can be
+ enabled and then NetworkManager will reload connection
+ files any time they change (monitor-connection-files=true in
+ <citerefentry><refentrytitle>NetworkManager.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>).
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>load</command>
+ <arg choice='plain' rep='repeat'><replaceable>filename</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Load/reload one or more connection files from disk. Use this after
+ manually editing a connection file to ensure that
+ NetworkManager is aware of its latest state.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>import</command>
+ <arg><option>--temporary</option></arg>
+ <arg><option>type</option> <replaceable>type</replaceable></arg>
+ <arg><option>file</option> <replaceable>file</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Import an external/foreign configuration as a NetworkManager connection
+ profile. The type of the input file is specified by <option>type</option>
+ option.</para>
+
+ <para>Only VPN configurations are supported at the moment. The configuration is
+ imported by NetworkManager VPN plugins. <option>type</option> values are
+ the same as for <option>vpn-type</option> option in <command>nmcli
+ connection add</command>. VPN configurations are imported by VPN plugins.
+ Therefore the proper VPN plugin has to be installed so that <command>nmcli</command> could import
+ the data.</para>
+
+ <para>The imported connection profile will be saved as persistent unless
+ <option>--temporary</option> option is specified, in which case the new profile
+ won't exist after NetworkManager restart.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>export</command>
+ <group>
+ <arg choice='plain'><option>id</option></arg>
+ <arg choice='plain'><option>uuid</option></arg>
+ <arg choice='plain'><option>path</option></arg>
+ </group>
+ <arg choice='plain'><replaceable>ID</replaceable></arg>
+ <arg><replaceable>file</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Export a connection.</para>
+
+ <para>Only VPN connections are supported at the moment. A proper VPN plugin has
+ to be installed so that <command>nmcli</command> could export a connection. If no
+ <replaceable>file</replaceable> is provided, the VPN configuration
+ data will be printed to standard output.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1 id='device'><title>Device Management Commands</title>
+
+ <cmdsynopsis>
+ <command>nmcli device</command>
+ <group choice='req'>
+ <arg choice='plain'><command>status</command></arg>
+ <arg choice='plain'><command>show</command></arg>
+ <arg choice='plain'><command>set</command></arg>
+ <arg choice='plain'><command>connect</command></arg>
+ <arg choice='plain'><command>reapply</command></arg>
+ <arg choice='plain'><command>disconnect</command></arg>
+ <arg choice='plain'><command>delete</command></arg>
+ <arg choice='plain'><command>monitor</command></arg>
+ <arg choice='plain'><command>wifi</command></arg>
+ <arg choice='plain'><command>lldp</command></arg>
+ </group>
+ <arg rep='repeat'><replaceable>ARGUMENTS</replaceable></arg>
+ </cmdsynopsis>
+
+ <para>Show and manage network interfaces.</para>
+
+ <variablelist>
+
+ <varlistentry>
+ <term><command>status</command></term>
+
+ <listitem>
+ <para>Print status of devices.</para>
+
+ <para>This is the default action if no command is specified to
+ <command>nmcli device</command>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>show</command>
+ <arg><replaceable>ifname</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Show detailed information about devices. Without an argument, all
+ devices are examined. To get information for a specific device, the interface
+ name has to be provided.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>set</command>
+ <arg>ifname</arg>
+ <arg choice='plain'><replaceable>ifname</replaceable></arg>
+ <arg>
+ <option>autoconnect</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ <arg>
+ <option>managed</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ </term>
+
+ <listitem>
+ <para>Set device properties.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>connect</command>
+ <arg><replaceable>ifname</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Connect the device. NetworkManager will try to find a suitable connection
+ that will be activated. It will also consider connections that are not set to
+ auto connect.</para>
+
+ <para>If <option>--wait</option> option is not specified, the default timeout will be 90
+ seconds.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>reapply</command>
+ <arg><replaceable>ifname</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Attempt to update device with changes to the currently active connection
+ made since it was last applied.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>disconnect</command>
+ <arg rep='repeat'><replaceable>ifname</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Disconnect a device and prevent the device from automatically activating
+ further connections without user/manual intervention. Note that disconnecting
+ software devices may mean that the devices will disappear.</para>
+
+ <para>If <option>--wait</option> option is not specified, the default timeout
+ will be 10 seconds.</para>
+ </listitem>
+ </varlistentry>
+
+
+ <varlistentry>
+ <term>
+ <command>delete</command>
+ <arg rep='repeat'><replaceable>ifname</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Delete a device. The command removes the interface from the system. Note
+ that this only works for software devices like bonds, bridges, teams, etc.
+ Hardware devices (like Ethernet) cannot be deleted by the command.</para>
+
+ <para>If <option>--wait</option> option is not specified, the default timeout will be 10
+ seconds.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>monitor</command>
+ <arg rep='repeat'><replaceable>ifname</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Monitor device activity. This command prints a line whenever the
+ specified devices change state.</para>
+
+ <para>Monitors all devices in case no interface is specified. The monitor
+ terminates when all specified devices disappear. If you want to monitor device
+ addition consider using the global monitor with <command>nmcli
+ monitor</command> command.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>wifi</command>
+ <arg>
+ <command>list</command>
+ <arg><option>ifname</option> <replaceable>ifname</replaceable></arg>
+ <arg><option>bssid</option> <replaceable>BSSID</replaceable></arg>
+ </arg>
+ </term>
+
+ <listitem>
+ <para>List available Wi-Fi access points. The <option>ifname</option> and
+ <option>bssid</option> options can be used to list APs for a particular
+ interface or with a specific BSSID, respectively.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>wifi</command>
+ <command>connect</command>
+ <arg choice='plain'><replaceable>(B)SSID</replaceable></arg>
+ <arg><option>password</option> <replaceable>password</replaceable></arg>
+ <arg>
+ <option>wep-key-type</option>
+ <group choice='req'>
+ <arg choice='plain'>key</arg>
+ <arg choice='plain'>phrase</arg>
+ </group>
+ </arg>
+ <arg><option>ifname</option> <replaceable>ifname</replaceable></arg>
+ <arg><option>bssid</option> <replaceable>BSSID</replaceable></arg>
+ <arg><option>name</option> <replaceable>name</replaceable></arg>
+ <arg>
+ <option>private</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ <arg>
+ <option>hidden</option>
+ <group choice='req'>
+ <arg choice='plain'>yes</arg>
+ <arg choice='plain'>no</arg>
+ </group>
+ </arg>
+ </term>
+
+ <listitem>
+ <para>Connect to a Wi-Fi network specified by SSID or BSSID. The command
+ creates a new connection and then activates it on a device. This is a
+ command-line counterpart of clicking an SSID in a GUI client. The command
+ always creates a new connection and thus it is mainly useful for connecting to
+ new Wi-Fi networks. If a connection for the network already exists, it is
+ better to bring up (activate) the existing connection as follows:
+ <command>nmcli con up id <replaceable>name</replaceable></command>. Note that
+ only open, WEP and WPA-PSK networks are supported at the moment. It is also
+ supposed that IP configuration is obtained via DHCP.</para>
+
+ <para>If <option>--wait</option> option is not specified, the default timeout will be 90
+ seconds.</para>
+
+ <para>Available options are:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>password</option></term>
+ <listitem>
+ <para>password for secured networks (WEP or WPA).</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>wep-key-type</option></term>
+ <listitem>
+ <para>type of WEP secret, either <option>key</option> for ASCII/HEX key or
+ <option>phrase</option> for passphrase.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>ifname</option></term>
+ <listitem>
+ <para>interface that will be used for activation.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>bssid</option></term>
+ <listitem>
+ <para>if specified, the created connection will be restricted just for the
+ BSSID.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>name</option></term>
+ <listitem>
+ <para>if specified, the connection will use the name (else NM creates a name
+ itself).</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>private</option></term>
+ <listitem>
+ <para>if set to <literal>yes</literal>, the connection will only be visible
+ to the user who created it. Otherwise the connection is system-wide, which is
+ the default.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>hidden</option></term>
+ <listitem>
+ <para>set to <literal>yes</literal> when connecting for the first time to an
+ AP not broadcasting its SSID. Otherwise the SSID would not be found and the
+ connection attempt would fail.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>wifi</command>
+ <command>hotspot</command>
+ <arg><option>ifname</option> <replaceable>ifname</replaceable></arg>
+ <arg><option>con-name</option> <replaceable>name</replaceable></arg>
+ <arg><option>ssid</option> <replaceable>SSID</replaceable></arg>
+ <arg>
+ <option>band</option>
+ <group choice='req'>
+ <arg choice='plain'>a</arg>
+ <arg choice='plain'>bg</arg>
+ </group>
+ </arg>
+ <arg><option>channel</option> <replaceable>channel</replaceable></arg>
+ <arg><option>password</option> <replaceable>password</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Create a Wi-Fi hotspot. The command creates a hotspot connection profile
+ according to Wi-Fi device capabilities and activates it on the device. The
+ hotspot is secured with WPA if device/driver supports that, otherwise WEP is
+ used. Use <command>connection down</command> or <command>device
+ disconnect</command> to stop the hotspot.</para>
+
+ <para>Parameters of the hotspot can be influenced by the optional
+ parameters:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><option>ifname</option></term>
+ <listitem>
+ <para>what Wi-Fi device is used.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>con-name</option></term>
+ <listitem>
+ <para>name of the created hotspot connection profile.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>ssid</option></term>
+ <listitem>
+ <para>SSID of the hotspot.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>band</option></term>
+ <listitem>
+ <para>Wi-Fi band to use.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>channel</option></term>
+ <listitem>
+ <para>Wi-Fi channel to use.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>password</option></term>
+ <listitem>
+ <para>password to use for the created hotspot. If not provided, <command>nmcli</command> will
+ generate a password. The password is either WPA pre-shared key or WEP
+ key.</para>
+
+ <para>Note that <option>--show-secrets</option> global option can be used to
+ print the hotspot password. It is useful especially when the password was
+ generated.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>wifi</command>
+ <command>rescan</command>
+ <arg><option>ifname</option> <replaceable>ifname</replaceable></arg>
+ <arg rep='repeat'><option>ssid</option> <replaceable>SSID</replaceable></arg>
+ </term>
+
+ <listitem>
+ <para>Request that NetworkManager immediately re-scan for
+ available access points. NetworkManager scans Wi-Fi networks periodically, but
+ in some cases it can be useful to start scanning manually (e.g. after resuming
+ the computer). By using <option>ssid</option>, it is possible to scan for a
+ specific SSID, which is useful for APs with hidden SSIDs. You can provide
+ multiple <option>ssid</option> parameters in order to scan more
+ SSIDs.</para>
+
+ <para>This command does not show the APs, use <command>nmcli device wifi list</command>
+ for that.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>lldp</command>
+ <arg>
+ <command>list</command>
+ <arg><option>ifname</option> <replaceable>ifname</replaceable></arg>
+ </arg>
+ </term>
+
+ <listitem>
+ <para>Display information about neighboring devices learned through the Link
+ Layer Discovery Protocol (LLDP). The <option>ifname</option> option can be
+ used to list neighbors only for a given interface. The protocol must be enabled
+ in the connection settings.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1 id='agent'><title>Secret Agent</title>
+
+ <cmdsynopsis>
+ <command>nmcli agent</command>
+ <group choice='req'>
+ <arg choice='plain'><command>secret</command></arg>
+ <arg choice='plain'><command>polkit</command></arg>
+ <arg choice='plain'><command>all</command></arg>
+ </group>
+ </cmdsynopsis>
+
+ <para>Run <command>nmcli</command> as a NetworkManager secret agent, or polkit agent.</para>
+
+ <variablelist>
+
+ <varlistentry>
+ <term><command>secret</command></term>
+
+ <listitem>
+ <para>Register <command>nmcli</command> as a NetworkManager secret agent and listen for secret
+ requests. You do usually not need this command, because <command>nmcli</command> can handle
+ secrets when connecting to networks. However, you may find the command useful
+ when you use another tool for activating connections and you do not have a
+ secret agent available (like nm-applet).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>polkit</command>
+ </term>
+
+ <listitem>
+ <para>Register <command>nmcli</command> as a polkit agent for the user session and listen for
+ authorization requests. You do not usually need this command, because <command>nmcli</command> can
+ handle polkit actions related to NetworkManager operations (when run with
+ <option>--ask</option>). However, you may find the command useful when you want
+ to run a simple text based polkit agent and you do not have an agent of a desktop
+ environment. Note that running this command makes <command>nmcli</command> handle all polkit requests,
+ not only NetworkManager related ones, because only one polkit agent can run for the
+ session.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
+ <command>all</command>
+ </term>
+
+ <listitem>
+ <para>Runs <command>nmcli</command> as both NetworkManager secret and a polkit agent.</para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ </refsect1>
+
+ <refsect1 id='environment_variables'><title>Environment Variables</title>
+
+ <para><command>nmcli</command>'s behavior is affected by the following
+ environment variables.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><envar>LC_ALL</envar></term>
+ <listitem>
+ <para>If set to a non-empty string value, it overrides the values of all the
+ other internationalization variables.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><envar>LC_MESSAGES</envar></term>
+ <listitem>
+ <para>Determines the locale to be used for internationalized messages.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><envar>LANG</envar></term>
+ <listitem>
+ <para>Provides a default value for the internationalization variables that are
+ unset or null.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ </refsect1>
+
+ <refsect1 id='internationalization_notes'><title>Internationalization notes</title>
+
+ <para>Be aware that <command>nmcli</command> is localized and that is why the
+ output depends on your environment. This is important to realize especially
+ when you parse the output.</para>
+
+ <para>Call <command>nmcli</command> as <command>LC_ALL=C nmcli</command> to
+ be sure the locale is set to <literal>C</literal> while executing in a script.</para>
+
+ <para><envar>LC_ALL</envar>, <envar>LC_MESSAGES</envar>, <envar>LANG</envar>
+ variables specify the <envar>LC_MESSAGES</envar> locale category (in that
+ order), which determines the language that <command>nmcli</command> uses for
+ messages. The <literal>C</literal> locale is used if none of these variables are set, and this
+ locale uses English messages.</para>
+
+ </refsect1>
+
+ <refsect1 id='exit_status'><title>Exit Status</title>
+
+ <para><command>nmcli</command> exits with status 0 if it succeeds, a value
+ greater than 0 is returned if an error occurs.</para>
+
+ <variablelist spacing='compact' termlength='3'>
+ <varlistentry>
+ <term><errorcode>0</errorcode></term>
+ <listitem>
+ <para>Success &ndash; indicates the operation succeeded.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>1</errorcode></term>
+ <listitem>
+ <para>Unknown or unspecified error.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>2</errorcode></term>
+ <listitem>
+ <para>Invalid user input, wrong <command>nmcli</command>
+ invocation.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>3</errorcode></term>
+ <listitem>
+ <para>Timeout expired (see <option>--wait</option> option).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>4</errorcode></term>
+ <listitem>
+ <para>Connection activation failed.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>5</errorcode></term>
+ <listitem>
+ <para>Connection deactivation failed.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>6</errorcode></term>
+ <listitem>
+ <para>Disconnecting device failed.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>7</errorcode></term>
+ <listitem>
+ <para>Connection deletion failed.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>8</errorcode></term>
+ <listitem>
+ <para>NetworkManager is not running.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>9</errorcode></term>
+ <listitem>
+ <para><command>nmcli</command> and <command>NetworkManager</command>
+ versions mismatch.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><errorcode>10</errorcode></term>
+ <listitem>
+ <para>Connection, device, or access point does not exist.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1 id='examples'><title>Examples</title>
+
+ <para>This section presents various examples of <command>nmcli</command> usage. If you want even
+ more, please refer to
+ <citerefentry><refentrytitle>nmcli-examples</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ manual page.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><userinput>nmcli -t -f RUNNING general</userinput></term>
+ <listitem>
+ <para>tells you whether NetworkManager is running or not.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -t -f STATE general</userinput></term>
+ <listitem>
+ <para>shows the overall status of NetworkManager.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli radio wifi off</userinput></term>
+ <listitem>
+ <para>switches Wi-Fi off.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli connection show</userinput></term>
+ <listitem>
+ <para>lists all connections NetworkManager has.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -p -m multiline -f all con show</userinput></term>
+ <listitem>
+ <para>shows all configured connections in multi-line mode.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli connection show --active</userinput></term>
+ <listitem>
+ <para>lists all currently active connections.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -f name,autoconnect c s</userinput></term>
+ <listitem>
+ <para>shows all connection profile names and their auto-connect property.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -p connection show "My default em1"</userinput></term>
+ <listitem>
+ <para>shows details for "My default em1" connection profile.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli --show-secrets connection show "My Home WiFi"</userinput></term>
+ <listitem>
+ <para>shows details for "My Home WiFi" connection profile with all passwords.
+ Without <option>--show-secrets</option> option, secrets would not be
+ displayed.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -f active connection show "My default em1"</userinput></term>
+ <listitem>
+ <para>shows details for "My default em1" active connection, like IP, DHCP
+ information, etc.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -f profile con s "My wired connection"</userinput></term>
+ <listitem>
+ <para>shows static configuration details of the connection profile with "My
+ wired connection" name.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -p con up "My wired connection" ifname eth0</userinput></term>
+ <listitem>
+ <para>activates the connection profile with name "My wired connection" on
+ interface eth0. The -p option makes <command>nmcli</command> show progress of the
+ activation.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli con up 6b028a27-6dc9-4411-9886-e9ad1dd43761 ap 00:3A:98:7C:42:D3</userinput></term>
+ <listitem>
+ <para>connects the Wi-Fi connection with UUID
+ 6b028a27-6dc9-4411-9886-e9ad1dd43761 to the AP with BSSID
+ 00:3A:98:7C:42:D3.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli device status</userinput></term>
+ <listitem>
+ <para>shows the status for all devices.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli dev disconnect em2</userinput></term>
+ <listitem>
+ <para>disconnects a connection on interface em2 and marks the device as
+ unavailable for auto-connecting. As a result, no connection will automatically
+ be activated on the device until the device's 'autoconnect' is set to TRUE or
+ the user manually activates a connection.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -f GENERAL,WIFI-PROPERTIES dev show wlan0</userinput></term>
+ <listitem>
+ <para>shows details for wlan0 interface; only GENERAL and WIFI-PROPERTIES
+ sections will be shown.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -f CONNECTIONS device show wlp3s0</userinput></term>
+ <listitem>
+ <para>shows all available connection profiles for your Wi-Fi interface
+ wlp3s0.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli dev wifi</userinput></term>
+ <listitem>
+ <para>lists available Wi-Fi access points known to NetworkManager.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli dev wifi con "Cafe Hotspot 1" password caffeine name "My cafe"</userinput></term>
+ <listitem>
+ <para>creates a new connection named "My cafe" and then connects it to "Cafe
+ Hotspot 1" SSID using password "caffeine". This is mainly useful when
+ connecting to "Cafe Hotspot 1" for the first time. Next time, it is better to
+ use <command>nmcli con up id "My cafe"</command> so that the
+ existing connection profile can be used and no additional is created.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli -s dev wifi hotspot con-name QuickHotspot</userinput></term>
+ <listitem>
+ <para>creates a hotspot profile and connects it. Prints the hotspot password
+ the user should use to connect to the hotspot from other devices.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli connection add type ethernet autoconnect no ifname eth0</userinput></term>
+ <listitem>
+ <para>non-interactively adds an Ethernet connection tied to eth0 interface with
+ automatic IP configuration (DHCP), and disables the connection's <literal>autoconnect</literal>
+ flag.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli c a ifname Maxipes-fik type vlan dev eth0 id 55</userinput></term>
+ <listitem>
+ <para>non-interactively adds a VLAN connection with ID 55. The connection will
+ use eth0 and the VLAN interface will be named Maxipes-fik.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli c a ifname eth0 type ethernet -- ipv4.method disabled ipv6.method link-local</userinput></term>
+ <listitem>
+ <para>non-interactively adds a connection that will use eth0 Ethernet interface
+ and only have an IPv6 link-local address configured.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli connection edit ethernet-em1-2</userinput></term>
+ <listitem>
+ <para>edits existing "ethernet-em1-2" connection in the interactive
+ editor.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli connection edit type ethernet con-name "yet another Ethernet connection"</userinput></term>
+ <listitem>
+ <para>adds a new Ethernet connection in the interactive editor.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli con mod ethernet-2 connection.autoconnect no</userinput></term>
+ <listitem>
+ <para>modifies 'autoconnect' property in the 'connection' setting of
+ 'ethernet-2' connection.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli con mod "Home Wi-Fi" wifi.mtu 1350</userinput></term>
+ <listitem>
+ <para>modifies 'mtu' property in the 'wifi' setting of 'Home Wi-Fi'
+ connection.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli con mod em1-1 ipv4.method manual ipv4.addr "192.168.1.23/24 192.168.1.1, 10.10.1.5/8, 10.0.0.11"</userinput></term>
+ <listitem>
+ <para>sets manual addressing and the addresses in em1-1 profile.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli con modify ABC +ipv4.dns 8.8.8.8</userinput></term>
+ <listitem>
+ <para>appends a Google public DNS server to DNS servers in ABC profile.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli con modify ABC -ipv4.addresses "192.168.100.25/24 192.168.1.1"</userinput></term>
+ <listitem>
+ <para>removes the specified IP address from (static) profile ABC.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli con import type openvpn file ~/Downloads/frootvpn.ovpn</userinput></term>
+ <listitem>
+ <para>imports an OpenVPN configuration to NetworkManager.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><userinput>nmcli con export corp-vpnc /home/joe/corpvpn.conf</userinput></term>
+ <listitem>
+ <para>exports NetworkManager VPN profile corp-vpnc as standard Cisco (vpnc)
+ configuration.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1 id='notes'><title>Notes</title>
+ <para><command>nmcli</command> accepts abbreviations, as long as they are a unique prefix in the set
+ of possible options. As new options get added, these abbreviations are not guaranteed
+ to stay unique. For scripting and long term compatibility it is therefore strongly
+ advised to spell out the full option names.</para>
+ </refsect1>
+
+ <refsect1 id='bugs'><title>Bugs</title>
+ <para>There are probably some bugs. If you find a bug, please report it to
+ https://bugzilla.gnome.org/ &mdash; product <literal>NetworkManager</literal>.</para>
+ </refsect1>
+
+ <refsect1 id='see_also'><title>See Also</title>
+ <para><citerefentry><refentrytitle>nmcli-examples</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>nm-online</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>NetworkManager</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>NetworkManager.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>nm-applet</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>nm-connection-editor</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
+ </refsect1>
+
+</refentry>