mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-25 04:50:07 +01:00
The previous ignore-carrier rules did not work well with dynamic IP (dhcp/slaac) connections. Change the rule so that only static IP connections can be activated when carrier is not present (but both static and dynamic connections will remain up when carrier is lost).
401 lines
16 KiB
XML
401 lines
16 KiB
XML
<?xml version='1.0'?> <!--*-nxml-*-->
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
|
|
|
<!--
|
|
Copyright (C) 2010 - 2013 Red Hat, Inc.
|
|
-->
|
|
|
|
<refentry id="NetworkManager.conf">
|
|
<refentryinfo>
|
|
<title>NetworkManager.conf</title>
|
|
<author>NetworkManager developers</author>
|
|
</refentryinfo>
|
|
|
|
<refmeta>
|
|
<refentrytitle>NetworkManager.conf</refentrytitle>
|
|
<manvolnum>5</manvolnum>
|
|
<refmiscinfo class="source">NetworkManager</refmiscinfo>
|
|
<refmiscinfo class="manual">Configuration</refmiscinfo>
|
|
<refmiscinfo class="version">0.9.10</refmiscinfo>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>NetworkManager.conf</refname>
|
|
<refpurpose>NetworkManager configuration file</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<para><filename>/etc/NetworkManager/NetworkManager.conf</filename>,
|
|
<filename>/etc/NetworkManager/conf.d/<replaceable>name</replaceable>.conf</filename>
|
|
</para>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
<para>This is a configuration file for NetworkManager. It is used
|
|
to set up various aspects of NetworkManager's behavior. The
|
|
location of the file may be changed through use of the
|
|
<option>--config</option> argument for NetworkManager.
|
|
</para>
|
|
<para>If a default <literal>NetworkManager.conf</literal> is
|
|
provided by your distribution's packages, you should not modify
|
|
it, since your changes may get overwritten by package
|
|
updates. Instead, you can add additional <literal>.conf</literal>
|
|
files to the <literal>conf.d</literal> directory. These will be read in order,
|
|
with later files overriding earlier ones.
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>File Format</title>
|
|
<para>
|
|
The configuration file format is so-called key file (sort of
|
|
ini-style format). It consists of sections (groups) of
|
|
key-value pairs. Lines beginning with a '#' and blank lines are
|
|
considered comments. Sections are started by a header line
|
|
containing the section enclosed in '[' and ']', and ended
|
|
implicitly by the start of the next section or the end of the
|
|
file. Each key-value pair must be contained in a section.
|
|
</para>
|
|
<para>
|
|
For keys that take a list of devices as their value, you can
|
|
specify devices by their MAC addresses or interface names, or
|
|
"*" to specify all devices.
|
|
</para>
|
|
<para>
|
|
Minimal system settings configuration file looks like this:
|
|
<programlisting>
|
|
[main]
|
|
plugins=keyfile
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
As an extension to the normal keyfile format, you can also
|
|
append a value to a previously-set list-valued key by doing:
|
|
<programlisting>
|
|
plugins+=another-plugin
|
|
</programlisting>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>main</literal> section (mandatory)</title>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>plugins</varname></term>
|
|
<listitem><para>List system settings plugin names separated
|
|
by ','. These plugins are used to read/write system-wide
|
|
connection. When more plugins are specified, the connections
|
|
are read from all listed plugins. When writing connections,
|
|
the plugins will be asked to save the connection in the
|
|
order listed here. If the first plugin cannot write out that
|
|
connection type, or can't write out any connections, the
|
|
next plugin is tried. If none of the plugins can save the
|
|
connection, the error is returned to the user. See below
|
|
for available plugins.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>monitor-connection-files</varname></term>
|
|
<listitem><para>Whether the configured settings plugin(s)
|
|
should set up file monitors and immediately pick up changes
|
|
made to connection files while NetworkManager is running. This
|
|
is disabled by default; NetworkManager will only read
|
|
the connection files at startup, and when explicitly requested
|
|
via the ReloadConnections D-Bus call. If this key is set to
|
|
'<literal>true</literal>', then NetworkManager wil reload
|
|
connection files any time they changed.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>dhcp</varname></term>
|
|
<listitem><para>This key sets up what DHCP client
|
|
NetworkManager will use. Presently
|
|
<literal>dhclient</literal> and <literal>dhcpcd</literal>
|
|
are supported. The client configured here should be
|
|
available on your system too. If this key is missing,
|
|
available DHCP clients are looked for in this order:
|
|
dhclient, dhcpcd.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>no-auto-default</varname></term>
|
|
<listitem><para>Comma-separated list of devices for which
|
|
NetworkManager shouldn't create default wired connection
|
|
(Auto eth0). By default, NetworkManager creates a temporary
|
|
wired connection for any Ethernet device that is managed and
|
|
doesn't have a connection configured. List a device in this
|
|
option to inhibit creating the default connection for the
|
|
device. May have the special value <literal>*</literal> to
|
|
apply to all devices.</para>
|
|
<para>When the default wired connection is deleted or saved
|
|
to a new persistent connection by a plugin, the device is
|
|
added to a list in the file
|
|
<filename>/var/run/NetworkManager/no-auto-default.state</filename>
|
|
to prevent creating the default connection for that device
|
|
again.</para>
|
|
<para>
|
|
<programlisting>
|
|
no-auto-default=00:22:68:5c:5d:c4,00:1e:65:ff:aa:ee
|
|
no-auto-default=eth0,eth1
|
|
no-auto-default=*
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>ignore-carrier</varname></term>
|
|
<listitem>
|
|
<para>
|
|
Comma-separated list of devices for which NetworkManager
|
|
will (partially) ignore the carrier state. Normally, for
|
|
device types that support carrier-detect, such as Ethernet
|
|
and InfiniBand, NetworkManager will only allow a
|
|
connection to be activated on the device if carrier is
|
|
present (ie, a cable is plugged in), and it will
|
|
deactivate the device if carrier drops for more than a few
|
|
seconds.
|
|
</para>
|
|
<para>
|
|
Listing a device here will allow activating connections on
|
|
that device even when it does not have carrier, provided
|
|
that the connection uses only statically-configured IP
|
|
addresses. Additionally, it will allow any active
|
|
connection (whether static or dynamic) to remain active on
|
|
the device when carrier is lost.
|
|
</para>
|
|
<para>
|
|
May have the special value <literal>*</literal> to apply
|
|
to all devices.
|
|
</para>
|
|
<para>
|
|
Note that the "carrier" property of NMDevices and device D-Bus
|
|
interfaces will still reflect the actual device state; it's just
|
|
that NetworkManager will not make use of that information.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>dns</varname></term>
|
|
<listitem><para>Set the DNS (<filename>resolv.conf</filename>) processing mode.</para>
|
|
<para><literal>default</literal>: The default if the key is
|
|
not specified. NetworkManager will update
|
|
<filename>resolv.conf</filename> to reflect the nameservers
|
|
provided by currently active connections.</para>
|
|
<para><literal>dnsmasq</literal>: NetworkManager will run
|
|
dnsmasq as a local caching nameserver, using a "split DNS"
|
|
configuration if you are connected to a VPN, and then update
|
|
<filename>resolv.conf</filename> to point to the local
|
|
nameserver.</para>
|
|
<para><literal>none</literal>: NetworkManager will not
|
|
modify resolv.conf.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>keyfile</literal> section</title>
|
|
<para>This section contains keyfile-specific options and thus only has effect when using the <literal>keyfile</literal> plugin.</para>
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>hostname</varname></term>
|
|
<listitem><para>Set a persistent hostname.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>unmanaged-devices</varname></term>
|
|
<listitem><para>Set devices that should be ignored by
|
|
NetworkManager when using the <literal>keyfile</literal>
|
|
plugin. Devices are specified in the following
|
|
format:</para>
|
|
<para><literal>mac:<hwaddr></literal> or
|
|
<literal>interface-name:<ifname></literal>. Here
|
|
<literal>hwaddr</literal> is the MAC address of the device
|
|
to be ignored, in hex-digits-and-colons notation.
|
|
<literal>ifname</literal> is the interface name of the
|
|
ignored device.</para>
|
|
<para>Multiple entries are separated with semicolons. No
|
|
spaces are allowed in the value.</para>
|
|
<para>
|
|
Example:
|
|
<programlisting>
|
|
unmanaged-devices=interface-name:em4
|
|
unmanaged-devices=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4;interface-name:eth2
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>ifupdown</literal> section</title>
|
|
<para>This section contains keyfile-specific options and thus only
|
|
has effect when using the <literal>ifdown</literal> plugin.</para>
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>managed</varname></term>
|
|
<listitem><para>If set to <literal>true</literal>, then
|
|
interfaces listed in
|
|
<filename>/etc/network/interfaces</filename> are managed by
|
|
NetworkManager. If set to <literal>false</literal>, then
|
|
any interface listed in
|
|
<filename>/etc/network/interfaces</filename> will be ignored
|
|
by NetworkManager. Remember that NetworkManager controls the
|
|
default route, so because the interface is ignored,
|
|
NetworkManager may assign the default route to some other
|
|
interface.</para>
|
|
<para>
|
|
The default value is <literal>false</literal>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>logging</literal> section</title>
|
|
<para>This section controls NetworkManager's logging. Any
|
|
settings here are overridden by the <option>--log-level</option>
|
|
and <option>--log-domains</option> command-line options.</para>
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>level</varname></term>
|
|
<listitem><para>One of <literal>ERR</literal>,
|
|
<literal>WARN</literal>, <literal>INFO</literal>,
|
|
<literal>DEBUG</literal>. The ERR level logs only critical
|
|
errors. WARN logs warnings that may reflect operation.
|
|
INFO logs various informational messages that are useful for
|
|
tracking state and operations. DEBUG enables verbose
|
|
logging for debugging purposes. Subsequent levels also log
|
|
all messages from earlier levels; thus setting the log level
|
|
to INFO also logs error and warning messages.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>domains</varname></term>
|
|
<listitem><para>The following log domains are available:
|
|
HW, RFKILL, ETHER, WIFI, BT, MB, DHCP4, DHCP6, PPP,
|
|
WIFI_SCAN, IP4, IP6, AUTOIP4, DNS, VPN, SHARING, SUPPLICANT,
|
|
AGENTS, SETTINGS, SUSPEND, CORE, DEVICE, OLPC, WIMAX,
|
|
INFINIBAND, FIREWALL, ADSL, BOND, VLAN, BRIDGE.</para>
|
|
<para>In addition, these special domains can be used: NONE,
|
|
ALL, DEFAULT, DHCP, IP.</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>connectivity</literal> section</title>
|
|
<para>This section controls NetworkManager's optional connectivity
|
|
checking functionality. This allows NetworkManager to detect
|
|
whether or not the system can actually access the internet or
|
|
whether it is behind a captive portal.</para>
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>uri</varname></term>
|
|
<listitem><para>The URI of a web page to periodically
|
|
request when connectivity is being checked. This page
|
|
should return the header "X-NetworkManager-Status" with a
|
|
value of "online". Alternatively, it's body content should
|
|
be set to "NetworkManager is online". The body content
|
|
check can be controlled by the <literal>response</literal>
|
|
option. If this option is blank or missing, connectivity
|
|
checking is disabled.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>interval</varname></term>
|
|
<listitem><para>Specified in seconds; controls how often
|
|
connectivity is checked when a network connection exists. If
|
|
set to 0 connectivity checking is disabled. If missing, the
|
|
default is 300 seconds.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>response</varname></term>
|
|
<listitem><para>If set controls what body content
|
|
NetworkManager checks for when requesting the URI for
|
|
connectivity checking. If missing, defaults to
|
|
"NetworkManager is online" </para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Plugins</title>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>keyfile</varname></term>
|
|
<listitem><para>plugin is the generic plugin that supports
|
|
all the connection types and capabilities that
|
|
NetworkManager has. It writes files out in an .ini-style
|
|
format in /etc/NetworkManager/system-connections. For
|
|
security, it will ignore files that are readable or
|
|
writeable by any user or group other than root since
|
|
private keys and passphrases may be stored in plaintext
|
|
inside the file. </para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>ifcfg-rh</varname></term>
|
|
<listitem><para>This plugin is used on the Fedora and Red
|
|
Hat Enterprise Linux distributions to read and write
|
|
configuration from the standard
|
|
<filename>/etc/sysconfig/network-scripts/ifcfg-*</filename>
|
|
files. It currently supports reading wired, WiFi, and
|
|
802.1x connections, but does not yet support reading or
|
|
writing mobile broadband, PPPoE, or VPN connections. To
|
|
allow reading and writing of these add <literal>keyfile</literal>
|
|
plugin to your configuration as well.</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>ifupdown</varname></term>
|
|
<listitem><para>This plugin is used on the Debian and Ubuntu
|
|
distributions, and reads connections from
|
|
<filename>/etc/network/interfaces</filename>. Since it cannot
|
|
write connections out (that support isn't planned), it is
|
|
usually paired with the <literal>keyfile</literal> plugin to
|
|
enable saving and editing of new connections. The
|
|
<literal>ifupdown</literal> plugin supports basic wired and
|
|
WiFi connections, including WPA-PSK.</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>ifcfg-suse</varname></term>
|
|
<listitem><para>This plugin is only provided for simple
|
|
backward compatibility with SUSE and OpenSUSE
|
|
configuration. Most setups should be using the
|
|
<literal>keyfile</literal> plugin instead. The
|
|
<literal>ifcfg-suse</literal> plugin supports reading
|
|
wired and WiFi connections, but does not support saving
|
|
any connection types.</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>See Also</title>
|
|
<para>
|
|
<citerefentry><refentrytitle>NetworkManager</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>nmcli</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>nmcli-examples</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>nm-online</refentrytitle><manvolnum>1</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>
|