]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - man/networkd.conf.xml
test/test-functions: avoid stderr noise, only umount on cleanup if mountpoint
[thirdparty/systemd.git] / man / networkd.conf.xml
index 5e2927ba543ac9f10e9f887409f72c946a7a941c..516455416b756c77e8ce4869562185bcaaa24a46 100644 (file)
@@ -1,24 +1,11 @@
-<?xml version='1.0'?> <!--*- Mode: nxml; nxml-child-indent: 2; indent-tabs-mode: nil -*-->
-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+<?xml version='1.0'?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
   "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
 
 <!--
-  This file is part of systemd.
+  SPDX-License-Identifier: LGPL-2.1+
 
-  Copyright 2014 Tom Gundersen
-
-  systemd is free software; you can redistribute it and/or modify it
-  under the terms of the GNU Lesser General Public License as published by
-  the Free Software Foundation; either version 2.1 of the License, or
-  (at your option) any later version.
-
-  systemd 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
-  Lesser General Public License for more details.
-
-  You should have received a copy of the GNU Lesser General Public License
-  along with systemd; If not, see <http://www.gnu.org/licenses/>.
+  Copyright © 2014 Vinay Kulkarni
 -->
 
 <refentry id="networkd.conf" conditional='ENABLE_NETWORKD'
   <refentryinfo>
     <title>networkd.conf</title>
     <productname>systemd</productname>
-
-    <authorgroup>
-      <author>
-        <contrib>Developer</contrib>
-        <firstname>Vinay</firstname>
-        <surname>Kulkarni</surname>
-        <email>kulkarniv@vmware.com</email>
-      </author>
-    </authorgroup>
   </refentryinfo>
 
   <refmeta>
     <title>Description</title>
 
     <para>These configuration files control global network parameters.
-    For e.g. DHCP Unique Identifier (DUID).</para>
+    Currently the DHCP Unique Identifier (DUID).</para>
 
   </refsect1>
 
   <xi:include href="standard-conf.xml" xpointer="main-conf" />
 
   <refsect1>
-    <title>[DUID] Section Options</title>
+    <title>[DHCP] Section Options</title>
 
-    <para>This section configures the DUID value used by the DHCP protocol. The DUID value
-    specified here overrides the DUID that systemd-networkd generates using the machine-id
-    from the <filename>/etc/machine-id</filename> file.</para>
+    <para>This section configures the DHCP Unique Identifier (DUID) value used by DHCP
+    protocol. DHCPv6 client protocol sends the DHCP Unique Identifier and the interface
+    Identity Association Identifier (IAID) to a DHCP server when acquiring a dynamic IPv6
+    address. DHCPv4 client protocol sends IAID and DUID to the DHCP server when acquiring
+    a dynamic IPv4 address if <option>ClientIdentifier=duid</option>. IAID and DUID allows
+    a DHCP server to uniquely identify the machine and the interface requesting a DHCP IP.
+    To configure IAID and ClientIdentifier, see
+    <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+    </para>
 
-    <para>The configured DHCP DUID should conform to the specification in 
-    <ulink url="http://tools.ietf.org/html/rfc3315#section-9">RFC 3315</ulink>,
-    <ulink url="http://tools.ietf.org/html/rfc6355">RFC 6355</ulink>. To configure IAID, see
-    <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum>
-    </citerefentry>.</para>
-
-    <para>The following options are available in <literal>[DUID]</literal> section:</para>
+    <para>The following options are understood:</para>
 
     <variablelist class='network-directives'>
-
       <varlistentry>
-        <term><varname>Type=</varname></term>
-        <listitem><para>The type of DUID specified in this section. The following values are
-        supported:</para>
-        <para>raw : If <literal>Type=raw</literal>, then <literal>RawData=</literal> specifies
-        the entire DUID. For e.g: <literal>RawData=00:02:00:00:ab:11:f9:2a:c2:77:29:f9:5c:00</literal>
-        specifies a 14 byte long DUID-EN ("00:02"), with enterprise number 43793 ("00:00:ab:11"),
-        and identifier value "f9:2a:c2:77:29:f9:5c:00".</para></listitem>
+        <term><varname>DUIDType=</varname></term>
+        <listitem><para>Specifies how the DUID should be generated. See
+        <ulink url="https://tools.ietf.org/html/rfc3315#section-9">RFC 3315</ulink>
+        for a description of all the options.</para>
+
+        <para>The following values are understood:
+        <variablelist>
+          <varlistentry>
+            <term><option>vendor</option></term>
+            <listitem><para>If <literal>DUIDType=vendor</literal>, then the DUID value will be generated using
+            <literal>43793</literal> as the vendor identifier (systemd) and hashed contents of
+            <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+            This is the default if <varname>DUIDType=</varname> is not specified.
+            </para></listitem>
+          </varlistentry>
+
+          <varlistentry>
+            <term><option>uuid</option></term>
+            <listitem><para>If <literal>DUIDType=uuid</literal>, and <varname>DUIDRawData=</varname> is not set,
+            then the product UUID is used as a DUID value. If a system does not have valid product UUID, then
+            an application-specific
+            <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+            is used as a DUID value. About the application-specific machine ID, see
+            <citerefentry><refentrytitle>sd_id128_get_machine_app_specific</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
+            </para></listitem>
+          </varlistentry>
+
+          <varlistentry>
+            <term><option>link-layer-time[:<replaceable>TIME</replaceable>]</option></term>
+            <term><option>link-layer</option></term>
+            <listitem><para>If <literal>link-layer-time</literal> or <literal>link-layer</literal> is specified,
+            then the MAC address of the interface is used as a DUID value. The value <literal>link-layer-time</literal>
+            can take additional time value after a colon, e.g. <literal>link-layer-time:2018-01-23 12:34:56 UTC</literal>.
+            The default time value is <literal>2000-01-01 00:00:00 UTC</literal>.
+            </para></listitem>
+          </varlistentry>
+        </variablelist>
+        </para>
+
+        <para>In all cases, <varname>DUIDRawData=</varname> can be used to override the
+        actual DUID value that is used.</para></listitem>
       </varlistentry>
 
       <varlistentry>
-        <term><varname>RawData=</varname></term>
-        <listitem><para>Specifies the DUID bytes as a single newline-terminated, hexadecimal
-        string, with each byte separated by a ':'.</para></listitem>
+        <term><varname>DUIDRawData=</varname></term>
+        <listitem><para>Specifies the DHCP DUID value as a single newline-terminated, hexadecimal string, with each
+        byte separated by <literal>:</literal>. The DUID that is sent is composed of the DUID type specified by
+        <varname>DUIDType=</varname> and the value configured here.</para>
+
+        <para>The DUID value specified here overrides the DUID that
+        <citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+        generates from the machine ID. To configure DUID per-network, see
+        <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+        The configured DHCP DUID should conform to the specification in
+        <ulink url="http://tools.ietf.org/html/rfc3315#section-9">RFC 3315</ulink>,
+        <ulink url="http://tools.ietf.org/html/rfc6355">RFC 6355</ulink>. To configure IAID, see
+        <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum>
+        </citerefentry>.</para>
+
+        <example>
+          <title>A <option>DUIDType=vendor</option> with a custom value</title>
+
+          <programlisting>DUIDType=vendor
+DUIDRawData=00:00:ab:11:f9:2a:c2:77:29:f9:5c:00</programlisting>
+
+          <para>This specifies a 14 byte DUID, with the type DUID-EN (<literal>00:02</literal>), enterprise number
+          43793 (<literal>00:00:ab:11</literal>), and identifier value <literal>f9:2a:c2:77:29:f9:5c:00</literal>.
+          </para>
+        </example>
+        </listitem>
       </varlistentry>
-
     </variablelist>
   </refsect1>
 
       <para>
       <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
-      <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+      <citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+      <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+      <citerefentry><refentrytitle>sd_id128_get_machine_app_specific</refentrytitle><manvolnum>3</manvolnum></citerefentry>
       </para>
   </refsect1>