chiark / gitweb /
doc: reword "shared per-thread" wording
[elogind.git] / man / systemd-networkd.service.xml
index 8bf2d92..48521df 100644 (file)
 
                 <para><command>systemd-networkd</command> is a system
                 service that manages networks. It detects and configures
-                network devices as they appear.</para>
+                network devices as they appear, as well as creating virtual
+                network devices.</para>
 
                 <para>Network configurations applied before networkd is started
                 are not removed, and configuration applied by networkd are not
                 removed when networkd exits. This ensures restarting networkd
-                does not cut the network connection, and in particular that it
-                is safe to transition between the initrd and the real root,
+                does not cut the network connection, and, in particular, that
+                it is safe to transition between the initrd and the real root,
                 and back.</para>
         </refsect1>
 
-        <refsect1><title>Network Configuration</title>
-                <para>The network files are read from the files located in the
+        <refsect1><title>Configuration Files</title>
+                <para>The configuration files are read from the files located in the
                 system network directory <filename>/usr/lib/systemd/network</filename>,
                 the volatile runtime network directory
                 <filename>/run/systemd/network</filename> and the local administration
                 network directory <filename>/etc/systemd/network</filename>.
-                All link files are collectively sorted and processed in lexical order,
+                All configuration files are collectively sorted and processed in lexical order,
                 regardless of the directories in which they live. However, files with
                 identical filenames replace each other. Files in
                 <filename>/etc</filename> have the highest priority, files in
                 <filename>/run</filename> take precedence over files with the same
-                name in <filename>/lib</filename>. This can be used to override a
-                system-supplied network file with a local file if needed; a symlink in
-                <filename>/etc</filename> with the same name as a network file in
-                <filename>/lib</filename>, pointing to <filename>/dev/null</filename>,
-                disables the network file entirely. Network files must have the extension
-                <filename>.network</filename>; other extensions are ignored.</para>
-
-                <para>The network file contains a <literal>[Match]</literal> section,
-                which determines if a given network file may be applied to a given device;
-                and a <literal>[Network]</literal> section specifying how the device should
-                be configured. The first (in lexical order) of the network files that
-                matches a given device is applied.</para>
-
-                <para>A network file is said to match a device if each of the entries in the
-                <literal>[Match]</literal> section matches, or if the section is empty.
-                The following keys are accepted:</para>
-
-                <variablelist class='network-directives'>
-                        <varlistentry>
-                                <term><varname>MACAddress</varname></term>
-                                <listitem>
-                                        <para>The hardware address.</para>
-                                </listitem>
-                        </varlistentry>
-                        <varlistentry>
-                                <term><varname>Path</varname></term>
-                                <listitem>
-                                        <para>The persistent path, as exposed by the udev
-                                        property <literal>ID_PATH</literal>.</para>
-                                </listitem>
-                        </varlistentry>
-                        <varlistentry>
-                                <term><varname>Driver</varname></term>
-                                <listitem>
-                                        <para>The driver currently bound to the device, as
-                                        exposed by the udev property <literal>DRIVER</literal>.
-                                        </para>
-                                </listitem>
-                        </varlistentry>
-                        <varlistentry>
-                                <term><varname>Type</varname></term>
-                                <listitem>
-                                        <para>The device type, as exposed by the udev property
-                                        <literal>DEVTYPE</literal>.</para>
-                                </listitem>
-                        </varlistentry>
-                        <varlistentry>
-                                <term><varname>Name</varname></term>
-                                <listitem>
-                                        <para>The device name, as exposed by the udev property
-                                        <literal>INTERFACE</literal>.</para>
-                                </listitem>
-                        </varlistentry>
-                </variablelist>
-
-                <para>The <literal>[Network]</literal> section accepts the following keys:</para>
-
-                <variablelist class='network-directives'>
-                        <varlistentry>
-                                <term><varname>Description</varname></term>
-                                <listitem>
-                                        <para>A description of the device. This is only used for
-                                        presentation purposes.</para>
-                                </listitem>
-                        </varlistentry>
-                        <varlistentry>
-                                <term><varname>Address</varname></term>
-                                <listitem>
-                                        <para>A static IPv4 or IPv6 address and its prefix length,
-                                        separated by a '/' character. The format of the address must
-                                        be as described in
-                                        <citerefentry><refentrytitle>inet_pton</refentrytitle><manvolnum>3</manvolnum></citerefentry>
-                                        .</para>
-                                </listitem>
-                        </varlistentry>
-                        <varlistentry>
-                                <term><varname>Gateway</varname></term>
-                                <listitem>
-                                        <para>The gateway address, which must be in the format described in
-                                        <citerefentry><refentrytitle>inet_pton</refentrytitle><manvolnum>3</manvolnum></citerefentry>
-                                        .</para>
-                                </listitem>
-                        </varlistentry>
-                </variablelist>
-
-                <para>The <literal>[Address]</literal> section accepts the following keys:</para>
-
-                <variablelist class='network-directives'>
-                        <varlistentry>
-                                <term><varname>Address</varname></term>
-                                <listitem>
-                                        <para>As in the <literal>[Network]</literal> section.</para>
-                                </listitem>
-                        </varlistentry>
-                        <varlistentry>
-                                <term><varname>Label</varname></term>
-                                <listitem>
-                                        <para>An address label.</para>
-                                </listitem>
-                        </varlistentry>
-               </variablelist>
+                name in <filename>/usr/lib</filename>. This can be used to override a
+                system-supplied configuration file with a local file if needed; a symlink in
+                <filename>/etc</filename> with the same name as a configuration file in
+                <filename>/usr/lib</filename>, pointing to <filename>/dev/null</filename>,
+                disables the configuration file entirely.</para>
+
+                <refsect2><title>Virtual Network Devices</title>
+                        <para>Virtual Network Device files must have the extension
+                        <filename>.netdev</filename>; other extensions are ignored. Virtual
+                        network devices are created as soon as networkd is started.</para>
+
+                        <para>The <literal>[NetDev]</literal> section accepts the following
+                        keys:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>Name</varname></term>
+                                        <listitem>
+                                                <para>The interface name used when creating the
+                                                bridge. This option is compulsory.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Kind</varname></term>
+                                        <listitem>
+                                                <para>The netdev kind. Currently, 'bridge', 'bond' and 'vlan'
+                                                are supported. This option is compulsory.</para>
+                                        </listitem>
+                                </varlistentry>
+                        </variablelist>
+
+                        <para>The <literal>[VLAN]</literal> section only applies for netdevs of kind 'vlan',
+                        and accepts the following keys:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>Id</varname></term>
+                                        <listitem>
+                                                <para>The VLAN ID to use. An integer in the range 0–4094.
+                                                This option is compulsory.</para>
+                                        </listitem>
+                                </varlistentry>
+                        </variablelist>
+
+                </refsect2>
+
+                <refsect2><title>Networks</title>
+                        <para>Network files must have the extension <filename>.network</filename>;
+                        other extensions are ignored. Networks are applied to links whenever the links
+                        appear.</para>
+
+                        <para>The network file contains a <literal>[Match]</literal> section,
+                        which determines if a given network file may be applied to a given device;
+                        and a <literal>[Network]</literal> section specifying how the device should
+                        be configured. The first (in lexical order) of the network files that
+                        matches a given device is applied.</para>
+
+                        <para>A network file is said to match a device if each of the entries in the
+                        <literal>[Match]</literal> section matches, or if the section is empty.
+                        The following keys are accepted:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>MACAddress</varname></term>
+                                        <listitem>
+                                                <para>The hardware address.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Path</varname></term>
+                                        <listitem>
+                                                <para>The persistent path, as exposed by the udev
+                                                property <literal>ID_PATH</literal>.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Driver</varname></term>
+                                        <listitem>
+                                                <para>The driver currently bound to the device, as
+                                                exposed by the udev property <literal>DRIVER</literal>.
+                                                </para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Type</varname></term>
+                                        <listitem>
+                                                <para>The device type, as exposed by the udev property
+                                                <literal>DEVTYPE</literal>.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Name</varname></term>
+                                        <listitem>
+                                                <para>The device name, as exposed by the udev property
+                                                <literal>INTERFACE</literal>.</para>
+                                        </listitem>
+                                </varlistentry>
+                        </variablelist>
+
+                        <para>The <literal>[Network]</literal> section accepts the following keys:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>Description</varname></term>
+                                        <listitem>
+                                                <para>A description of the device. This is only used for
+                                                presentation purposes.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>DHCP</varname></term>
+                                        <listitem>
+                                                <para>A boolean. When true, enables basic DHCPv4 support.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Address</varname></term>
+                                        <listitem>
+                                                <para>A static IPv4 or IPv6 address and its prefix length,
+                                                separated by a '/' character. The format of the address must
+                                                be as described in
+                                                <citerefentry><refentrytitle>inet_pton</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                                . This is a short-hand for an [Address] section only containing an Address key (see below).</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Gateway</varname></term>
+                                        <listitem>
+                                                <para>The gateway address, which must be in the format described in
+                                                <citerefentry><refentrytitle>inet_pton</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                                . This is a short-hand for a [Route] section only containing a Gateway key.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>DNS</varname></term>
+                                        <listitem>
+                                                <para>A DNS server address, which must be in the format described in
+                                                <citerefentry><refentrytitle>inet_pton</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                                .</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Bridge</varname></term>
+                                        <listitem>
+                                                <para>The name of the bridge to add the link to.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Bond</varname></term>
+                                        <listitem>
+                                                <para>The name of the bond to add the link to.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>VLAN</varname></term>
+                                        <listitem>
+                                                <para>The name of a VLAN to create on the link. This option
+                                                may be specified more than once.</para>
+                                        </listitem>
+                                </varlistentry>
+                        </variablelist>
+
+                        <para>The <literal>[Address]</literal> section accepts the following keys:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>Address</varname></term>
+                                        <listitem>
+                                                <para>As in the <literal>[Network]</literal> section. This key is mandatory.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Label</varname></term>
+                                        <listitem>
+                                                <para>An address label.</para>
+                                        </listitem>
+                                </varlistentry>
+                        </variablelist>
+
+                        <para>The <literal>[Route]</literal> section accepts the following keys:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>Gateway</varname></term>
+                                        <listitem>
+                                                <para>As in the <literal>[Network]</literal> section. This key is mandatory.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>Destination</varname></term>
+                                        <listitem>
+                                                <para>The destination prefix of the route. Possibly followed by a slash and the
+                                                prefixlength, if ommitted a full-length host route is assumed.</para>
+                                        </listitem>
+                                </varlistentry>
+                        </variablelist>
+
+                        <para>The <literal>[DHCPv4]</literal> section accepts the following keys:</para>
+
+                        <variablelist class='network-directives'>
+                                <varlistentry>
+                                        <term><varname>UseDNS</varname></term>
+                                        <listitem>
+                                                <para>When true (the default), the DNS servers received from the DHCP server will
+                                                be used and take precedence over any statically configured ones.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>UseMTU</varname></term>
+                                        <listitem>
+                                                <para>When true, the interface maximum transmission unit from the DHCP server will
+                                                be used on the current link. Defaults to false.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>UseHostname</varname></term>
+                                        <listitem>
+                                                <para>When true (the default), the hostname received from the DHCP server
+                                                will be used as the transient hostname.</para>
+                                        </listitem>
+                                </varlistentry>
+                                <varlistentry>
+                                        <term><varname>CriticalConnection</varname></term>
+                                        <listitem>
+                                                <para>When true, the connection will never be torn down even if the DHCP lease
+                                                expires. This is contrary to the DHCP specification, but may be the best choice
+                                                if, say, the root filesystem relies on this connection. Defaults to false.</para>
+                                        </listitem>
+                                </varlistentry>
+                       </variablelist>
+
+                </refsect2>
         </refsect1>
 
         <refsect1>